Systems and methods for coding in broadband wireless communication systems to achieve maximum diversity in space, time and frequency

ABSTRACT

Maximum diversity in multiple antenna distributed frequency broadband systems such as MIMO-OFDM is achievable through space-frequency (SF) and space-time-frequency (STF) coding. Full-rate full-diversity coding is achieved through a combination of maximal minimum product distance symbol set design and formation of codeword blocks. Full-diversity codes are also achieved which have reduced symbol transmission rates, such as through mapping of space-time (ST) codes to SF codes. The reduction in symbol rate may be offset by the fact that any ST code may be mapped to a full-diversity SF code.

RELATED APPLICATION DATA

The invention described herein is based on Provisional Patent Application Ser. No. 60/574,468, filed on 26 May 2004.

STATEMENT REGARDING GOVERNMENT SPONSORED RESEARCH

The invention described herein was developed through research funded under federal contract. As such, the United States Government has certain rights thereto.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The invention described herein is related to encoding data streams in a wireless communications network. More specifically, the invention is directed to encoding data in multiple-channel, multiple-frequency communication systems so as to provide maximum diversity in space-frequency or in space-time-frequency.

2. Description of the Prior Art

Multiple-input multiple-output (MIMO) orthogonal frequency division multiplexing (OFDM) communication systems, referred to as MIMO-OFDM have exhibited great potential in broadband communications. By employing multiple transmit and multiple receive antennas, many of the adverse effects typically encountered in wireless transmission may be reduced. OFDM modulation may mitigate frequency selective transmission by establishing a plurality of parallel flat-fading channels, thereby providing high spectral efficiency and eliminating the need for complex equalization technology.

Two MIMO-OFDM coding techniques are prevalent in the current art: space-frequency (SF) coding within an OFDM block exploits spatial and frequency diversities, and space-time-frequency (STF) coding, where coding is applied over multiple OFDM blocks to additionally exploit temporal diversities.

Previous SF coding systems have fallen short of achieving full diversity in both space and frequency, usually achieving full diversity in one realm at the expense of full diversity in the other. The same is true for STF codes—full diversity across all three of space, time and frequency has proven elusive. Thus, there is an apparent need for SF and STF coding which can guarantee full-diversity concurrently across all applicable domains.

SUMMARY OF THE INVENTION

In one aspect of the present invention, a method is provided for conveying an encoded data stream in a wireless communication system in a manner that achieves maximum space-frequency or space-time-frequency diversity. A transmitter is provided with a plurality of transmit antennas and means for simultaneously transmitting through each antenna a corresponding symbol over a corresponding one of a plurality of frequencies. A receiver is provided with a plurality of receive antennas and means for recovering the data stream from the symbols transmitted over the plurality of frequencies. The region of space between each transmit antenna and each receive antenna defines a corresponding transmission channel. By way of the present invention, a first codeword is formed from symbols corresponding to data in a data stream. A transform is applied to the first codeword to produce a second codeword. The transform may operate on the symbols of the first codeword themselves or may simply arrange the first codeword into the second codeword in an appropriate manner. The second codeword includes a plurality of column vectors equal in number to the number of transmit antennas and a plurality of rows equal in number to an integer multiple of the plurality of frequencies. The second codeword is transmitted such that the symbols in each column thereof are transmitted via a corresponding one of the transmit antennas and symbols in each row thereof are transmitted over a corresponding frequency. The second codewords are received at the receiver and the data stream is recovered therefrom.

In another aspect of the invention, an apparatus for conveying data in a broadband wireless communication system is provided. The apparatus includes a transmitter having a plurality of transmit antennas and a plurality of orthogonal frequency modulators. The frequency modulators are operable to modulate a transmission symbol onto each of a corresponding plurality of frequencies. The apparatus further includes an encoder for encoding a data stream into a codeword, where the codeword is characterized by a matrix of transmission symbols having a plurality of columns equal in number to the number of transmit antennas and a plurality of rows equal in number to an integer multiple of the number of frequencies. The encoder is coupled to the transmitter such that a transmission symbol in a row of the codeword and at a column of the codeword and is transmitted via a transmit antenna corresponding to the column of the codeword over a frequency corresponding to the row of the codeword. The encoder is further operable to establish a set of symbols in which a minimum product distance is maximized, where the established set encompasses the transmission symbols of the codeword. The apparatus also includes a receiver having a plurality of receive antennas and a plurality of orthogonal frequency demodulators for demodulating each of the corresponding frequencies. A decoder is coupled to the receiver for decoding the transmitted codeword and recovering therefrom the data stream.

In yet another aspect of the present invention, an apparatus is provided having a transmitter with a plurality of transmit antennas and a plurality of orthogonal frequency modulators for modulating a transmission symbol onto each of a corresponding plurality of frequencies and a receiver having a plurality of receive antennas and a plurality of orthogonal frequency demodulators for demodulating each of the plurality of frequencies. The apparatus includes an encoder for encoding a data stream into a first codeword and a mapper for mapping the first codeword onto a second codeword. The second codeword is characterized by a matrix of transmission symbols having a plurality of columns equal in number to the number of transmit antennas and a plurality of rows equal in number to an integer multiple of the plurality of frequencies. The encoder is coupled to the transmitter such that a transmission symbol at a column and row of the second codeword is transmitted, respectively, via a transmit antenna corresponding to the column and over a frequency corresponding to the row. A decoder coupled to the receiver decodes the transmitted codeword and recovers the data stream therefrom.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic block diagram illustrating an exemplary embodiment of an apparatus operable in accordance with the present invention;

FIG. 2 is a schematic block diagram illustrating a further exemplary embodiment of an apparatus operable in accordance with the present invention;

FIG. 3 is a schematic block diagram illustrating yet another exemplary embodiment of an apparatus operable in accordance with the present invention;

FIGS. 4A-4B are graphs depicting extrinsic diversity product of the present invention as a function of a separation factor for a typical urban power delay profile;

FIGS. 5A-5B are graphs depicting extrinsic diversity product of the present invention as a function of a separation factor for a hilly terrain power delay profile;

FIGS. 6A-6B are performance graphs of an exemplary space-frequency code of the present invention;

FIGS. 7A-7B are performance graphs of an exemplary space-frequency code of the present invention;

FIGS. 8A-8B are performance graphs of an exemplary space-frequency code of the present invention;

FIGS. 9A-9B are performance graphs of an exemplary space-frequency code as mapped from a space-time code in accordance with the present invention;

FIGS. 10A-10B are performance graphs of an exemplary space-frequency code as mapped from a space-time code in accordance with the present invention;

FIG. 11A is a graph depicting a power delay profile used to illustrate the performance of embodiments of the present invention;

FIG. 11B is a performance graph of an exemplary space-frequency code as mapped from a space-time code in accordance with the present invention;

FIG. 12A-12B are performance graphs of an exemplary space-time-frequency code of the present invention;

FIGS. 13A-13C are performance graphs of exemplary space-time-frequency codes of the present invention;

FIGS. 14A-14B are performance graphs comparing alternative constructions of space-frequency codes of the present invention;

FIGS. 15A-15B are performance graphs comparing alternative constructions of space-frequency codes of the present invention;

FIGS. 16A-16B are performance graphs comparing alternative constructions of space-frequency codes of the present invention; and

FIG. 17 is a flow diagram depicting fundamental method steps of certain embodiments of the present invention.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

1. Transmission Channel Model

To illustrate certain aspects of the present invention, it is believed beneficial to characterize the transmission channels by way of a model. Referring to FIG. 1, there is shown a MIMO-OFDM wireless communication system having M_(t) transmit antennas 110, M_(r) receive antennas 120 and N subcarriers. Each channel 150 is assumed to be a frequency selective fading channel between each pair of transmit and receive antennas having L independent delay paths and the same power delay profile. The channel impulse response of each MIMO channel is assumed to be constant over each OFDM block period, but may vary from one OFDM block to another. For the k-th OFDM block, the channel impulse response from transmit antenna i to receive antenna j at time τ can be modeled as $\begin{matrix} {{{h_{i,j}^{k}(\tau)} = {\sum\limits_{l = 0}^{L - 1}{{\alpha_{i,j}^{k}(l)}{\delta\left( {\tau - \tau_{l}} \right)}}}},} & (1) \end{matrix}$ where τ_(l) is the delay and α_(i,j) ^(k)(l) is the complex amplitude of the l-th path between transmit antenna i and receive antenna j. The α_(i,j) ^(k)(l)'s are modeled as zero-mean, complex Gaussian random variables with variances E|α_(i,j) ^(k)(l)|², =δ_(l) ², where the operator E is that of probabilistic expectation. The power of the signal in the L paths are normalized such that Σ_(l=0) ^(L−1)δ_(l) ²=1. From (1), the frequency response of the channel is given by $\begin{matrix} {{{H_{i,j}^{k}(f)} = {\sum\limits_{l = 0}^{L - 1}{{\alpha_{i,j}^{k}(l)}{\mathbb{e}}^{{- {j2\pi}}\quad f\quad\tau_{l}}}}},} & (2) \end{matrix}$ where j=√{square root over (−1)} is the imaginary unit.

To achieve diversity across space, time and frequency, space-time-frequency (STF) coding across M_(t) transmit antennas, N OFDM subcarriers and K consecutive OFDM blocks is first considered. The input bit stream 135 is divided into b bit long segments, and each segment is mapped onto a codeword. In the STF case, an STF codeword can be expressed as a KN×M_(t) matrix C=[C ₁ ^(T) C ₂ ^(T) . . . C _(K) ^(T)]^(T),  (3) where the channel symbol matrix C_(k) is given by $\begin{matrix} {{C_{k} = \begin{bmatrix} {c_{1}^{k}(0)} & {c_{2}^{k}(0)} & \cdots & {c_{M_{t}}^{k}(0)} \\ {c_{1}^{k}(1)} & {c_{2}^{k}(1)} & \cdots & {c_{M_{t}}^{k}(1)} \\ \vdots & \vdots & \cdots & \vdots \\ {c_{1}^{k}\left( {N - 1} \right)} & {c_{2}^{k}\left( {N - 1} \right)} & \cdots & {c_{M_{t}}^{k}\left( {N - 1} \right)} \end{bmatrix}},} & (4) \end{matrix}$ and c_(i) ^(k)(n) is the channel symbol transmitted over the n-th sub-carrier by transmit antenna i in the k-th OFDM block. The STF code is assumed to satisfy the energy constraint E∥C∥_(F) ²=KNM_(t), where ∥C∥_(F) is the Frobenius norm of C i.e.,: $\begin{matrix} {{{C}}_{f}^{2} = {{{tr}\left( {C^{\Psi}C} \right)} = {{{tr}\left( {CC}^{\Psi} \right)} = {\sum\limits_{n = 0}^{N - 1}{\sum\limits_{i = 1}^{M_{t}}{{{c_{i}(n)}}^{2}.}}}}}} & (5) \end{matrix}$ During the k-th OFDM block period, the transmitter, at each OFDM Tx processors 115, applies an N-point IFFT to each column of the matrix C_(k). After appending a cyclic prefix, the OFDM symbol corresponding to the i-th (i=1, 2, . . . , M_(t)) column of C_(k) is transmitted by transmit antenna i. In accordance with the conventions of the art, all of the M_(t) OFDM symbols are transmitted simultaneously from different transmit antennas.

At the receiver, after matched filtering, removing the cyclic prefix, and applying FFT at OFDM Rx processor 125, the received signal at the n-th subcarrier at receive antenna j in the k-th OFDM block is given by $\begin{matrix} {{{y_{j}^{k}(n)} = {{\sqrt{\frac{\rho}{M_{t}}}{\sum\limits_{i = 1}^{M_{T}}{{c_{i}^{k}(n)}{H_{i,j}^{k}(n)}}}} + {z_{j}^{k}(n)}}},} & (6) \\ {{H_{i,j}^{k}(n)} = {\sum\limits_{l = 0}^{L - 1}{{a_{i,j}^{k}(l)}{\mathbb{e}}^{{- 2}\pi\quad n\quad\Delta\quad f\quad t_{l}}}}} & (7) \end{matrix}$ is the channel frequency response at the n-th subcarrier between transmit antenna i and receive antenna j, Δf=1/T is the subcarrier separation in the frequency domain, and T is the OFDM symbol period. It is assumed that the channel state information H_(i,j) ^(k) (n) is known at the receiver, but not at the transmitter. In (6), z_(j) ^(k)(n) denotes the additive white complex Gaussian noise with zero mean and unit variance in the n-th sub-carrier at receive antenna j in the k-th OFDM block. The factor √{square root over (ρ/M_(t))} in (6) ensures that ρ is the average signal to noise ratio (SNR) at each receive antenna, independently of the number of transmit antennas.

In certain implementations of the present invention, temporal variability in the transmission channel is ignored. As such, the channel impulse response from transmit antenna i to receive antenna j is simplified and is modeled as $\begin{matrix} {{{h_{i,j}(\tau)} = {\sum\limits_{l = 0}^{L - 1}{{\alpha_{i,j}(l)}{\delta\left( {\tau - \tau_{l}} \right)}}}},} & (8) \end{matrix}$ where, still, τ_(l) is the delay of the l-th path, and α_(i,j)(l) is the complex amplitude of the l-th path, where each α_(i,j)(l) is modeled as a zero-mean, complex Gaussian random variables with variance E|α_(i,j)(l)|²=δ_(l) ². The powers of the L paths are once again normalized such that Σ_(l=0) ^(L−1)δ_(l) ²=1. From (7), the frequency response of the temporally invariant channel is given by $\begin{matrix} {{H_{i,j}(f)} = {\sum\limits_{l = 0}^{L - 1}{{\alpha_{i,j}(l)}{{\mathbb{e}}^{{- {j2\pi}}\quad f\quad\tau_{1}}.}}}} & (9) \end{matrix}$ It is assumed that the MIMO channel is spatially uncorrelated, i.e. the channel taps α_(i,j)(l) are independent for different indices (i, j).

In the space-frequency (SF) diversity case, each b bit long segment of the input bit stream 135 is mapped onto an SF codeword, which can be represented by an N×M_(t) matrix $\begin{matrix} {{C = \begin{bmatrix} {c_{1}(0)} & {c_{2}(0)} & \cdots & {c_{M_{t}}(0)} \\ {c_{2}(0)} & {c_{2}(1)} & \cdots & {c_{M_{t}}(1)} \\ \vdots & \vdots & ⋰ & \vdots \\ {c_{1}\left( {N - 1} \right)} & {c_{2}\left( {N - 1} \right)} & \cdots & {c_{M_{t}}\left( {N - 1} \right)} \end{bmatrix}},} & (10) \end{matrix}$ where c_(i)(n) denotes the channel symbol transmitted over the n-th subcarrier by transmit antenna i. The SF code is assumed to satisfy the energy constraint E|C|_(f) ²=NM_(t). The OFDM transmitter applies an N-point IFFT via OFDM Tx processor 115 to each column of the matrix C, and after appending the cyclic prefix, the OFDM symbol corresponding to the i-th (i=1,2, . . . , M_(t)) column of C is transmitted by transmit antenna i.

At the receiver, after matched filtering, removing the cyclic prefix, and applying FFT via OFDM Rx processor 125, the received signal at the n-th subcarrier at receive antenna j is given by $\begin{matrix} {{{y_{j}(n)} = {{\sqrt{\frac{\rho}{M_{t}}}{\sum\limits_{i = 1}^{M_{t}}{{c_{i}(n)}{H_{i,j}(n)}}}} + {z_{j}(n)}}},{where}} & (11) \\ {{H_{i,j}(n)} = {\sum\limits_{l = 0}^{L - 1}{{\alpha_{i,j}(l)}{\mathbb{e}}^{{- {j2\pi}}\quad n\quad\Delta\quad f\quad\tau_{l}}}}} & (12) \end{matrix}$ is the channel frequency response at the n-th subcarrier between transmit antenna i and receive antenna j, Δf=1/T is the subcarrier separation in the frequency domain, and T is the OFDM symbol period. Again, it is assumed that the channel state information H_(i,j)(n) is known at the receiver, but not at the transmitter. In (11), z_(j)(n) denotes the additive complex Gaussian noise with zero mean and unit variance at the n-th subcarrier at receive antenna j. The noise samples z_(j)(n) are assumed to be uncorrelated for different j's and n's. 2. Code Design Criteria

The performance criteria for coded MIMO-OFDM systems will now be derived based on the STF channel model to determine the maximum achievable diversity order for such systems. Using the notation c_(i)((k−1)N+n)

c_(i) ^(k)(n), H_(i,j)((k−1)N+n)

H_(i,j) ^(k)(n), y_(j)((k−1)N+n)

y_(j) ^(k)(n), and z_(j)((k−1)N+n)

z_(j) ^(k)(n) for 1≦k≦K, 0≦n≦N−1 1≦i≦M_(t) and 1≦j≦M_(r), the received signal in (6) can be expressed as $\begin{matrix} {{{y_{j}(m)} = {{\sqrt{\frac{\rho}{M_{t}}}{\sum\limits_{i = 1}^{M_{t}}{{c_{i}(m)}{H_{i,j}(m)}}}} + {z_{j}(m)}}},} & (13) \end{matrix}$ for m=0, 1, . . . KN−1. The received signal may be rewritten in vector form as $\begin{matrix} {{Y = {{\sqrt{\frac{\rho}{M_{t}}}{DH}} + Z}},} & (14) \end{matrix}$ where D is a KNM_(r)×KNM_(t)M_(r), matrix constructed from the STF codeword C in (3) as follows: D=I _(M) _(r) {circle around (×)}[D ₁ D ₂ . . . D _(M) _(t) ],  (15) where {circle around (×)} denotes the tensor product, I_(M), is the identity matrix of size M_(r)×M_(r), and D _(i) =diag{c _(i)(0), c _(i)(1), . . . , c _(i)(KN−1)}  (16) for any i=1, 2, . . . , M_(t). The channel vector H of size KNM_(t)M_(r)×1 is formatted as H=[H _(l,1) ^(T) . . . H _(M) _(t) _(,1) ^(T) H _(l,2) ^(T) . . . H _(M) _(t) _(,2) ^(T) . . . H _(l,M) _(r) ^(T) . . . H _(M) _(t) _(M) _(r) ^(T)]^(T),  (17) where H _(i,j) =[H _(i,j)(0) H _(i,j)(1) . . . H _(i,j)(KN−1)]^(T)  (18) The received signal vector Y of size KNM_(r)×1 is given by Y=[y ₁(0) . . . y ₁(KN−1) y ₂(0) . . . y ₂(KN−1) . . . y _(M) _(r) (0) . . . y _(M) _(r) (KN−1)]^(T),  (19) and the noise vector Z has the same form as Y, i.e., Z=[z ₁(0) . . . z ₁(KN−1) Z ₂(0) . . . z ₂(KN−1) . . . z _(M) _(r) (0) . . . z_(M) _(r) (KN−1)]^(T),  (20) Suppose that D and {tilde over (D)} are two matrices constructed from two different codewords C and {tilde over (C)}, respectively. Then, the pair-wise error probability between D and {tilde over (D)} can be upper bounded as $\begin{matrix} {{{P\text{(}D}->{{\overset{\sim}{D}\text{)}} \leq {\begin{pmatrix} {{2r} - 1} \\ r \end{pmatrix}\left( {\prod\limits_{i = 1}^{r}\gamma_{i}} \right)^{- 1}\left( \frac{\rho}{M_{t}} \right)^{- r}}}},} & (21) \end{matrix}$ where r is the rank of (D−{tilde over (D)})R(D−{tilde over (D)})^(ψ), γ₁, γ₂, . . . , γ_(r) are the non-zero eigenvalues of (D−{tilde over (D)})R(D−{tilde over (D)})^(ψ), and R=E {HH^(ψ)} is the correlation matrix of H. The symbol ψ is used herein to denote the complex conjugate transpose of a matrix, i.e., (A*)^(T)=(A^(T))*=A^(ψ) is the transpose of the complex conjugate of the matrix A. Based on the upper bound on the pair-wise error probability in (21), two general code performance criteria can be proposed as follows: Diversity (rank) criterion where the minimum rank of (D−{tilde over (D)})R(D−{tilde over (D)})^(ψ) over all pairs of different codewords C and {tilde over (C)} should be as large as possible, or product criterion; where the minimum value of the product Π_(i=1) ^(r)γ_(i) over all pairs of different codewords C and {tilde over (C)} should be maximized.

The channel frequency response vector between transmit antenna i and receive antenna j for the time invariant case can be similarly denoted by H _(i,j) =[H _(i,j)(0) H _(i,j)(1) . . . H _(i,j)(N−1)]^(T).  (22) Using the notation ω=e^(−j2πΔf), H_(i,j) can be decomposed as: H _(i,j) =W·A _(i,j),  (23) where ${W = \begin{bmatrix} 1 & 1 & \cdots & 1 \\ \omega^{\tau_{0}} & \omega^{\tau_{1}} & \cdots & \omega^{\tau_{L - 1}} \\ \vdots & \vdots & ⋰ & \vdots \\ \omega^{{({N - 1})}\tau_{0}} & \omega^{{({N - 1})}\tau_{1}} & \cdots & \omega^{{({N - 1})}\tau_{L - 1}} \end{bmatrix}_{N \times L}},$ which is related to the delay distribution, and

-   -   A_(i,j)=[α_(i,j)(0)α_(i,j)(1) . . . α_(i,j)(L−1)]^(T),         which is related to the power distribution of the channel         impulse response. In general, W is not a unitary matrix. If all         of the L delay paths fall at the sampling instances of the         receiver, W is part of the DFT-matrix, which is unitary. From         (23), the correlation matrix of the channel frequency response         vector between transmit antenna I and receive antenna j can be         calculated as: $\begin{matrix}         \begin{matrix}         {R_{i,j} = {E\left\{ {H_{i,j}H_{i,j}^{\Psi}} \right\}}} \\         {= {{WE}\left\{ {A_{i,j}A_{i,j}^{\Psi}} \right\} W^{\Psi}}} \\         {= {{Wdiag}\left\{ {\delta_{0}^{2},\delta_{1}^{2},\ldots\quad,\delta_{L - 1}^{2}} \right\} W^{\Psi}}}         \end{matrix} & (24)         \end{matrix}$         The third equality follows from the assumption that the path         gains α_(i,j)(l) are independent for different paths and         different pairs of transmit and receive antennas. Note that the         correlation matrix R is independent of the transmit and receive         antenna indices i and j.

For two distinct SF codewords C and {tilde over (C)}, the notation Δ=(C−{tilde over (C)})(C−{tilde over (C)})^(ψ)  (25) is used. The pair-wise error probability between C and {tilde over (C)} can be upper bounded as $\begin{matrix} {{P\text{(}C}->{{\overset{\sim}{C}\text{)}} \leq {\begin{pmatrix} {{2{vM}_{r}} - 1} \\ {vM}_{r} \end{pmatrix}\left( {\prod\limits_{i = 1}^{v}\lambda_{i}} \right)^{- M_{r}}\left( \frac{\rho}{M_{t}} \right)^{- {vM}_{r}}}}} & (26) \end{matrix}$ where ν is the rank of Δ∘R, γ₁, γ₂, . . . γ_(ν) are the non-zero eigenvalues of Δ∘R, and ∘ denotes the Hadamard product. Recall that if A={a_(i,j)} and B={b_(i,j)} are matrices of size m×n, then the Hadamard product ${A \circ B} = {\begin{bmatrix} {a_{1,1}b_{1,1}} & \cdots & {a_{1,n}b_{1,n}} \\ \vdots & ⋰ & \vdots \\ {a_{m,1}b_{m,1}} & \cdots & {a_{m,n}b_{m,n}} \end{bmatrix}.}$

Based on the upper bound (26), the two SF code design criteria are similar to those above. Diversity (rank) criteria may be used, where the minimum rank of Δ∘R over all pairs of distinct codewords C and {tilde over (C)} should be as large as possible, and product criteria may be used, where the minimum value of the product Π_(i=1) ^(ν)λ_(i) over all pairs of distinct codewords C and {tilde over (C)} is maximized.

3. Full-Rate and Full-Diversity SF Code Design

If the minimum rank of Δ∘R is ν₀ for any pair of distinct codewords C and {tilde over (C)}, the SF code is said to achieve a diversity order of ν₀M_(r). According to a rank inequality on Hadamard products, it is known that rank(Δ∘R)≦rank(Δ)rank(R). Since the rank of Δ is at most M_(t), the rank of R is at most L, and the rank of Δ∘R is at most N, the maximum achievable diversity (or full diversity) is at most min {LM_(t)M_(r), NM_(r)}. Clearly, in order to achieve a diversity order of ν₀M_(r), the number of non-zero rows of C and {tilde over (C)} cannot be less than ν₀ for any pair of distinct SF codewords C and {tilde over (C)}. If a SF code achieves full diversity, the diversity product, which is the normalized coding advantage, is given by: $\begin{matrix} {\zeta = {\frac{1}{2\sqrt{M_{t}}}{\min\limits_{C \neq C}{{\prod\limits_{i = 1}^{v}\lambda_{i}}}^{\frac{1}{2v}}}}} & (27) \end{matrix}$ where λ₁, λ₂, . . . λ_(ν) are the non-zero eigenvalues of Δ∘R for any pair of distinct SF codewords C and {tilde over (C)}.

Certain embodiments of the present invention provide a systematic method to obtain full-rate SF codes achieving full diversity in space and frequency. Specifically, a class of SF codes can be designed through the present invention that can achieve a diversity order of ΓM_(t)M_(r) for any fixed integer Γ, (1≦Γ≦L).

In accordance with certain embodiments of the invention, each SF codeword C is a concatenation of some matrices G_(p): C=[G ₁ ^(T) G ₂ ^(T) . . . G _(p) ^(T) 0_(N−PΓM) _(t) ^(T)]^(T),  (28) where P=└N/(ΓM_(t))┘, and each matrix G_(p), p=1, 2, . . . , P, is of size ΓM_(t) by M_(t). The zero padding in (28) is used if the number of subcarriers N is not an integer multiple of ΓM_(t). Each matrix G_(p), (1≦p≦P), has the same structure given by G=√{square root over (M _(t) )} diag(X ₁ , X ₂ , . . . , X _(M) _(t) ),  (29) where diag(X₁, X₂, . . . , X_(M) _(t) ) is a block diagonal matrix, X_(i)=[x_((i−1)Γ+1) x_((i−1)Γ+2) . . . x_(iΓ)]^(T) i=1,2, . . . , M_(t), and all x_(k), k=1, 2, . . . , ΓM_(t) are complex symbols and are discussed below. The energy constraint of E(Σ_(k=1) ^(ΓM) ^(t) |x_(k)|²)=ΓM_(t) applies. The selection of the symbols X=[x₁ x₂ . . . x_(ΓM) _(t) ] is independent for each G_(p)(1≦p≦P). The symbol rate of the resulting code is PΓM_(t)/N, ignoring the cyclic prefix. If N is a multiple of ΓM_(t), zero padding of the codeword C is not required and transmission is at full rate, i.e., the symbol rate is 1. If not, the rate is less than 1, but since N is usually much greater than ΓM_(t), the symbol rate is very close to 1.

Sufficient conditions for the SF codes described above to achieve a diversity order of ΓM_(t)M_(r) will now be derived. As noted above, to determine the diversity criterion, the rank of Δ∘R must be known, where Δ is defined in (25) and R is the correlation matrix defined in (24). Suppose that C and {tilde over (C)} are two distinct SF codewords which are constructed from G₁, G₂, . . . , G_(p) and {tilde over (G)}₁, {tilde over (G)}₂, {tilde over (G)}_(p), respectively. Then, there exists at least one index p₀, (1≦p₀≦P) such that G_(P) ₀ ≠{tilde over (G)}_(p) ₀ . It may be further assumed that G_(p)={tilde over (G)}_(P) for any p≠p₀, since it has been shown that the minimum rank of Δ∘R can be obtained under this assumption.

From (24), we know that the correlation matrix R

{r_(i,j)}_(1≦i,j≦N) is a Toeplitz matrix. The entries of R are given by $\begin{matrix} {{r_{i,j} = {\sum\limits_{l = 0}^{L - 1}{\delta_{l}^{2}\omega^{{({i - j})}\tau_{1}}}}},{1 \leq i},{j \leq {N.}}} & (30) \end{matrix}$ Under the assumption that G_(p)={tilde over (G)}_(p) for any p≠p₀, the non-zero eigenvalues of Δ∘R are the same as those of [(G_(p) ₀ −{tilde over (G)}_(p) ₀ )(G_(p) ₀ −{tilde over (G)}_(p) ₀ )^(ψ)]∘Q, where Q={q_(i,j)}_(1≦i,j≦ΓM) _(t) is also a Toeplitz matrix whose entries are $\begin{matrix} {{q_{i,j} = {\sum\limits_{l = 0}^{L - 1}{\delta_{l}^{2}\omega^{{({i - j})}\tau_{l}}}}},{1 \leq i},{j \leq {\Gamma\quad{M_{t}.}}}} & (31) \end{matrix}$ Note that Q is independent of the index p₀, i.e., it is independent of the position of G_(p) ₀ −G_(p) ₀ in C−{tilde over (C)}. Suppose that G_(p) ₀ and {tilde over (G)}_(p) ₀ have symbols X=[x₁ x₂ . . . x_(ΓM) _(t) ] and {tilde over (X)}=[{tilde over (x)}₁ {tilde over (x)}₂ {tilde over (x)}_(ΓM) _(t) ], respectively. Then, the difference matrix between G_(p) ₀ and {tilde over (G)}_(p) ₀ is $\begin{matrix} \begin{matrix} {{{G_{p_{0}} - {\overset{\sim}{G}}_{p_{0}}} = {{\sqrt{M_{t}}{diag}\text{(}\text{(}X_{1}} - {{\overset{\sim}{X}}_{1}\text{)}}}},{{\text{(}X_{2}} - {{\overset{\sim}{X}}_{2}\text{)}}},\ldots\quad,} \\ {{\text{(}X_{M_{t}}} - {{\overset{\sim}{X}}_{M_{t}}\text{)}}} \\ {{= {{\sqrt{M_{t}}\text{(}X} - {\overset{\sim}{X}\text{)}\text{(}{I_{M_{t}} \otimes 1_{\Gamma \times 1}}\text{)}}}},} \end{matrix} & (32) \end{matrix}$ where diag(X−{tilde over (X)})

diag ((x₁−{tilde over (x)}₁), (x₂−{tilde over (x)}₂), . . . , (x_(ΓM) _(t) −{tilde over (x)}_(ΓM) _(t) ), I_(M) _(t) is the identity matrix of size M_(t)×M_(t), 1_(Γ×1) is an all one matrix of size Γ×1, and {circle around (×)} is the tensor product operator. Thus, $\begin{matrix} \begin{matrix} {{\left\lbrack {\left( {G_{p_{0}} - {\overset{\sim}{G}}_{p_{0}}} \right)\left( {G_{p_{0}} - {\overset{\sim}{G}}_{p_{0}}} \right)^{\Psi}} \right\rbrack \circ Q} = {M_{t}\left\lbrack {{{diag}\left( {X - \overset{\sim}{X}} \right)}\left( {I_{M_{t}} \otimes 1_{r \times 1}} \right)} \right.}} \\ {\left. {\left( {I_{M_{t}} \otimes 1_{\Gamma \times 1}} \right)^{\Psi}{{diag}\left( {X - \overset{\sim}{X}} \right)}^{\Psi}} \right\rbrack \circ Q} \\ {= {M_{t}\left\lbrack {{{diag}\left( {X - \overset{\sim}{X}} \right)}\left( {I_{M_{t}} \otimes 1_{\Gamma \times \Gamma}} \right)} \right.}} \\ {\left. {{diag}\left( {X - \overset{\sim}{X}} \right)^{\Psi}} \right\rbrack \circ Q} \\ {= {M_{t}\left\lbrack {{{{diag}\left( {X - \overset{\sim}{X}} \right)}\left\lbrack \left( {I_{M_{t}} \otimes 1_{\Gamma \times \Gamma}} \right) \right\rbrack} \circ Q} \right.}} \\ {{{diag}\left( {X - \overset{\sim}{X}} \right)}^{\Psi}.} \end{matrix} & (33) \end{matrix}$ In the above derivation, the second equality follows from the identities [I_(M) _(t) {circle around (×)}1_(Γ×1)]^(ψ)=I_(M) _(t) {circle around (×)}1_(1×Γ) and (A₁{circle around (×)}B₁)(A₂{circle around (×)}B₂)(A₃{circle around (×)}B₃)=(A₁A₂A₃){circle around (×)}(B₁B₂B₃), and the last equality follows from a property of the Hadamard product. If all of the eigenvalues of [(G_(p) ₀ −{tilde over (G)}_(p) ₀ )(G_(p) ₀ −{tilde over (G)}_(p) ₀ )ψ]∘Q are non-zero, the product of the eigenvalues is $\begin{matrix} \begin{matrix} {{\det\left( {\left\lbrack {\left( {G_{p_{0}} - {\overset{\sim}{G}}_{p_{0}}} \right)\left( {G_{p_{0}} - {\overset{\sim}{G}}_{p_{0}}} \right)^{\Psi}} \right\rbrack \circ Q} \right)} = {M_{t}^{\Gamma\quad M_{t}}{\prod\limits_{k = 1}^{\Gamma\quad M_{t}}{{{x_{k} - {\overset{\sim}{x}}_{k}}}^{2} \cdot}}}} \\ {\det\left( {\left( {I_{M_{t}} \otimes 1_{\Gamma \times \Gamma}} \right) \circ Q} \right)} \\ {M_{t}^{\Gamma\quad M_{t}}{\prod\limits_{k = 1}^{\Gamma\quad M_{t}}{{{x_{k} - {\overset{\sim}{x}}_{k}}}^{2} \cdot}}} \\ {\left. {\det\left( Q_{0} \right)} \right)^{M_{t}},} \end{matrix} & (34) \end{matrix}$ where Q₀={q_(i,j)}, 1≦i,j≦Γ and q_(i,j) is specified in (31). Similar to the correlation matrix R in (24), Q₀ can also be expressed as $\begin{matrix} {{{Q_{0} = {W_{0}{{diag}\left( {\delta_{0}^{2},\delta_{1}^{2},\ldots\quad,\delta_{L - 1}^{2}} \right)}W_{0}^{\Psi}}},{where}}{W_{0} = {\begin{bmatrix} 1 & 1 & \cdots & 1 \\ w^{\tau_{0}} & w^{\tau_{1}} & \cdots & w^{\tau_{L - 1}} \\ \vdots & \vdots & ⋰ & \vdots \\ w^{{({\Gamma - 1})}\tau_{0}} & w^{{({\Gamma - 1})}\tau_{1}} & \cdots & w^{{({\Gamma - 1})}\tau_{L - 1}} \end{bmatrix}_{\Gamma \times L}.}}} & (35) \end{matrix}$ Clearly, with τ₀<τ₁< . . . <τ_(L−1), Q₀ is nonsingular. Therefore, from (34), it can be observed that if Π_(k=1) ^(ΓM) ^(t) |x_(k)−{tilde over (x)}_(k)|≠0, the determinant of [(G_(p) ₀ −{tilde over (G)}_(p) ₀ )(G_(p) ₀ −{tilde over (G)}_(p) ₀ )^(ψ)]∘Q is non-zero. This implies that the SF code achieves a diversity order of ΓM_(t)M_(r).

The assumption of G_(p)={tilde over (G)}_(p) for any p≠p₀ is also sufficient to calculate the diversity product defined in (27). If the rank of Δ∘R is ΓM_(t) and G_(p)≠{tilde over (G)}_(p) for some p≠p₀, the product of the non-zero eigenvalues of Δ∘R should be not less than that with the assumption of G_(p)={tilde over (G)}_(p) for any p≠p₀. Specifically, the diversity product can be calculated as $\begin{matrix} \begin{matrix} {\zeta = {\frac{1}{2\sqrt{M_{t}}}{\min\limits_{G_{p_{0}} \neq G_{p_{0}}}{{\det\left( {\left\lbrack {\left( {G_{p_{0}} - {\overset{\sim}{G}}_{p_{0}}} \right)\left( {G_{p_{0}} - {\overset{\sim}{G}}_{p_{0}}} \right)^{\Psi}} \right\rbrack \circ Q} \right)}}^{\frac{1}{2\Gamma\quad M_{t}}}}}} \\ {= {\frac{1}{2}{\min\limits_{X \neq X}{\left( {\prod\limits_{k = 1}^{\Gamma\quad M_{t}}{{x_{k} - {\overset{\sim}{x}}_{k}}}} \right)^{\frac{1}{\Gamma\quad M_{t}}}{{\det\left( Q_{0} \right)}}^{\frac{1}{2\Gamma}}}}}} \\ {= {{\zeta_{i\quad n} \cdot {{\det\left( Q_{0} \right)}}^{\frac{1}{2\Gamma}}}\quad{and}}} \end{matrix} & (36) \\ {\zeta_{i\quad n} = {\frac{1}{2}{\min\limits_{X \neq X}\left( {\sum\limits_{k = 1}^{\Gamma\quad M_{t}}{{x_{k} - {\overset{\sim}{x}}_{k}}}} \right)^{\frac{1}{\Gamma\quad M_{t}}}}}} & (37) \end{matrix}$ is termed the “intrinsic” diversity product of the SF code and is independent of the power delay profile of the channel.

Thus, in accordance with fundamental aspects of the invention, the following holds: For any SF code constructed by (28) and (29), if Π_(k=1) ^(ΓM) ^(t) |x_(k)−{tilde over (x)}_(k)|≠0, for any pair of distinct sets of symbols X=[x₁ x₂ . . . x_(ΓM) _(t) ] and {tilde over (X)}=[{tilde over (x)}₁ {tilde over (x)}₂ {tilde over (x)}_(ΓM) _(t) ]the SF code achieves a diversity order of ΓM_(t)M_(r), and a diversity product as given by (36).

It is to be noted that |det(Q₀| depends only on the power delay profile of the channel, and the intrinsic diversity product ζ_(in) depends only on min _(X≠{tilde over (X)})(Π_(k=1) ^(ΓM) ^(t) |x_(k)−{tilde over (x)}_(k)|)^(l/(ΓM) ^(t) , which is called the minimum product distance of the set of symbols X=[x₁ x₂ . . . X_(ΓM) _(t) ]. Therefore, given the code structure (29), it is desirable to design the set of symbols X such that the minimum product distance is as large as possible. The problem of maximizing the minimum product distance of a set of signal points as the solution to the problem of constructing signal constellations for Rayleigh fading channels is well-known. Two exemplary design methodologies to establish the set of variables X=[x₁ x₂ . . . x_(ΓM) _(t) ] will now be discussed. A change notation, K=ΓM_(t), will simplify the discussion.

In a first exemplary design approach, the signal points X=[x₁ x₂ . . . x_(K)] are transformed over a K-dimensional signal set. Specifically, assume that Ω is a set of signal points, such as a constellation known to those in the art (QAM, PAM, etc). For any signal vector S=[s₁ s₂ . . . s_(K)]εΩ^(K), let X=SM _(K),  (38) where M_(K) is K×K matrix. For a given signal constellation Ω, the transform M_(K) should be optimized such that the minimum product distance of the set of X vectors is as large as possible. Both Hadamard transforms and Vandermonde matrices may be utilized for constructing M_(K), however the transforms M_(K) based on Vandermonde matrices result in larger minimum product distance than those based on Hadamard transforms.

To illustrate these aspects of the invention, an exemplary transform M_(K) based on Vandermonde matrices will be presently described. Recall that a Vandermonde matrix with variables θ₁, θ₂, . . . θ_(K) is a K×K matrix $\begin{matrix} {{V\left( {\theta_{1},\theta_{2},\ldots\quad,\theta_{K}} \right)}{{\underset{=}{\bigtriangleup}\begin{bmatrix} 1 & 1 & \cdots & 1 \\ \theta_{1} & \theta_{2} & \cdots & \theta_{K} \\ \vdots & \vdots & \cdots & \vdots \\ \theta_{1}^{K - 1} & \theta_{2}^{K - 1} & \cdots & \theta_{K}^{K - 1} \end{bmatrix}}.}} & (39) \end{matrix}$ In a first exemplary class of transforms, K=2^(s), (s≧1) and the optimum transform M_(K) for a signal constellation from Z[j]

{a +jb: both a and b are integers, j=√{square root over (−1)}} is given by $\begin{matrix} {{M_{K} = {\frac{1}{\sqrt{K}}{V\left( {\theta_{1},\theta_{2},\ldots\quad,\theta_{K}} \right)}}},} & (40) \end{matrix}$ where θ₁, θ₂, θ_(K) are the roots of the polynomial θ^(K)−j over field Q[j]

{c+dj: both c and d are rational numbers}, and they can be determined as $\begin{matrix} {{\theta_{k} = {\mathbb{e}}^{j\frac{{4\quad k} - 3}{2K}}},{k = 1},2,\ldots\quad,{K.}} & (41) \end{matrix}$

In another exemplary class, K=3·2^(s), (s≧0), and the optimum transform M_(K) for a signal constellation Ω from Z[ω]

{a+bω: both a and b are integers, ω=(−1+j)√{square root over (3)}/2} is given by $\begin{matrix} {{M_{K} = {\frac{1}{\sqrt{K}}V\left( {\theta_{1},\theta_{2},\ldots\quad,\theta_{K}} \right)}},} & (42) \end{matrix}$ where θ₁, θ₂, . . . θ_(K) are the roots of the polynomial θ^(K)+ω over field Q[ω]

{c+dω: both c and d are rational numbers}, and they are specified as $\begin{matrix} {{\theta_{k} = {\mathbb{e}}^{j\frac{{6\quad k} - 1}{3K}\pi}},{k = 1},2,\ldots\quad,{K.}} & (43) \end{matrix}$

The signal constellations Ω from Z[j] are of practical interest. In the case where K=2^(s), (s≧1), optimum transforms (40) and (41) have been described in the prior art literature. Other transforms M_(K) (not optimum) are known where K is not a power of two. If K=2^(s)·3^(t) (s≧1,t≧1), for example, a class of transforms M_(K) for signal constellations Ω from Z[j] has been given as $\begin{matrix} {{{M_{K} = {\frac{1}{\sqrt{K}}V\left( {\theta_{1},\theta_{2},\ldots\quad,\theta_{K}} \right)}},{where}}\text{}{{\theta_{k} = {\mathbb{e}}^{j\frac{{6\quad k} - 5}{3K}\pi}},{k = 1},2,\ldots\quad,{K.}}} & (44) \end{matrix}$ Additionally, optimum transforms M_(K) are known where K is not a power of two. For example, if K is not a power of two, but K=φ(J) for some J with J≢0(mod4), where φ(•) is the Euler function φ(J) denotes the number of integers m, (1≦m≦J) such that m is relatively prime to J, i.e., gcd(m,J)=1), the optimum transform M_(K) for a signal constellation Ω from Z[j] can be expressed as $\begin{matrix} \begin{matrix} {M_{K} = {\frac{1}{\sqrt{K}}V\quad\left( {\theta_{1},\theta_{2},\ldots\quad,\theta_{K}} \right)\quad{where}}} \\ {{\theta_{k} = {\mathbb{e}}^{j\frac{2m_{k}}{J}\pi}},} \\ {{{\gcd\quad\left( {m_{k},J} \right)} = 1},\quad{i \leq m_{k} < {J.}}} \end{matrix} & (45) \end{matrix}$ For example, when K is 6, 10, 12, 18, the corresponding J is 7, 11, 13, 19, respectively. In these cases, θ_(k)=e^(j2kπ/J) $\begin{matrix} {{\theta_{k} = {\mathbb{e}}^{j\quad\frac{2k}{J}\pi}},} & {{k = 1},2,\cdots\quad,{J - 1.}} \end{matrix}$ In case of some odd K, for example K=5, 7, 9, and so on, it has been shown that: $\begin{matrix} {{{M_{K} = {\frac{1}{\sqrt{\gamma}}V\quad\left( {\theta_{1},\theta_{2},\ldots\quad,\theta_{K}} \right)}},}\quad} & (46) \end{matrix}$ where θ₁, θ₂, . . . , θ_(K) are the roots of polynomial θ^(K)−(1+j) over the field Q[j], and can be calculated as $\begin{matrix} {{\theta_{k} = {2^{\frac{1}{2K}}{\mathbb{e}}^{j\frac{{8k} - 7}{4K}\pi}}},\quad{k = 1},2,\ldots\quad,{K.}} & (47) \end{matrix}$ In (46), the factor γ is equal to √{square root over ((2^(1/K)−1)/K)} for the energy normalization. Note that although the transforms given in (44) and (47) are not optimum, they do provide large minimum product distance.

In another approach to designing the signal set X, the structure of the diagonal space-time block codes is exploited. Suppose that the spectral efficiency of the SF code is r bits/s/Hz. The set of L₀=2^(rK) variables may then be directly designed under the energy constraint E∥X∥_(F) ²=K. For example, if diagonal space-time block codes may be constructed as follows: C _(l) =diag(e ^(ju) ¹ ^(θ) ^(l) , e ^(ju) ² ^(θis l) , . . . , e ^(ju) ^(K) ^(θ) ^(l) ), l=0, 1, . . . , L ₀−1,  (48) where ${\theta_{l} = {\frac{l}{L_{0}}2\pi}},{0 \leq l \leq {L_{0} - 1}},$ and u₁, u₂, . . . , u_(K) ε{0, 1, . . . , L₀−1}. The parameters u₁, u₂, . . . , u_(K) are to be optimized such that the metric $\begin{matrix} {{\min\limits_{l \neq l^{\prime}}{\prod\limits_{k = 1}^{K}\quad{{{\mathbb{e}}^{j\quad u_{k}\theta_{l}} - {\mathbb{e}}^{j\quad u_{k}\theta_{l^{\prime}}}}}}} = {\min\limits_{1 \leq l \leq {L_{0} - 1}}{\prod\limits_{k = 1}^{K}\quad{{2\quad{\sin\left( {\frac{u_{k}l}{L_{0}}\pi} \right)}}}}}} & (49) \end{matrix}$ is maximized. A set of variables X=[x₁ x₂ . . . x_(K)] may be constructed as follows: For any l=0, 1, . . . , L₀−1, let x _(k) =e ^(ju) ^(k) ^(θ) ^(l) , k=1, 2, . . . , K.  (50)

Then, the minimum product distance of the set of the resulting signal vectors X may determined by the metric in (49). The optimum parameters u=[u₁ u₂ . . . u_(K)] can be obtained via computer search. For example, K = 4, L₀ = 16, u = [1 3 5 7]; K = 4, L₀ = 256, u = [1 25 97 107]; K = 6, L₀ = 64, u = [1 9 15 17 23 25]; K = 6, L₀ = 1024, u = [1 55 149 327 395 417]; . . ..

In the previous discussion, a class of SF codes with full rate and full diversity was obtained under the assumption that the transmitter has no a priori knowledge about the channel. If channel information were available to the transmitter, aspects of the invention may bring into effect improved performance of the SF codes. For example, the correlation between adjacent subcarriers may be reduced by random interleaving of the transmitted symbols. Additionally, if the power delay profile of the channel is available to the transmitter, further improvement can be achieved through a data permutation (or interleaving) method that explicitly takes the power delay profile into account.

4. Maximizing the Coding Advantage of SF Codes by Permutation

Suppose that the path delays τ₀, τ₁ τ_(L−1) and signal powers θ₀ ², θ₁ ², θ_(L−1) ² are available to the transmitter. With this knowledge, the present invention provides an optimum permutation (or interleaving) method for the SF codes defined by (28) and (29) such that the resulting coding advantage is maximized. By permuting the rows of a SF codeword C, an interleaved codeword σ(c) is obtained.

An exemplary system for carrying out the permutations to be presently described is illustrated in FIG. 3. As with the exemplary systems previously described, the transmitter is configured with M_(t) transmit antennas and OFDM Tx processors 315, whose functions correspond with like elements in previously described embodiments. The SF encoder 330 performs the SF encoding on bitstream 335 as described above. The receiver is configured with M_(r) receive antennas 325 and OFDM Rx processors 325, which operate as described above. The SF decoder 340 performs the decoding operation at the receiving end.

The receive antennas 320 are coupled to channel monitor 360, which performs analysis on the incoming transmission to extract characteristic data from each transmission channel 350. The channel characteristics may include symbol delay information as well as an indication of received power. The characteristic information is provided to interleaver 370 at the transmitter through feedback path 365. The interleaver 370 permutes the codeword as prescribed by the channel characteristics, as will be described in paragraphs that follow. It should be noted that while the exemplary channel characteristic acquisition mechanism of FIG. 3 is shown in a feedback configuration, other configurations are possible and within the scope of the present invention.

As stated previously, for two distinct SF codewords C and {tilde over (C)} constructed from G₁, G₂, . . . , G_(p) and {tilde over (G)}₁, {tilde over (G)}₂, . . . , {tilde over (G)}_(p) respectively, there exists at least one index p₀(1≦p₀≦P) such that G_(p) ₀ ≠G_(p) ₀ . In order to determine the minimum rank of [σ(C−{tilde over (C)})σ(C−{tilde over (C)})^(ψ)]∘R, it is further assumed that G_(p)={tilde over (G)}_(p) for any p≠p₀ for the same reason as stated above.

Suppose that G_(p) ₀ and {tilde over (G)}_(p) ₀ consist of symbols X=[x₁ x₂ . . . x_(ΓM) _(t) ] and {tilde over (X)}=[{tilde over (x)}₁ {tilde over (x)}₂ . . . {tilde over (x)}_(ΓM) _(t) ], respectively, with x_(k)≠{tilde over (x)}_(k) for all 1≦k≦ΓM_(t). For simplicity, we use the notation Δx_(k)=x_(k)−{tilde over (x)}_(k) for k=1, 2, . . . , ΓM_(t). In certain embodiments of the invention, the k-th, (1≦k≦ΓM_(t)) row of G_(p) ₀ −{tilde over (G)}_(p) ₀ is relocated to the n-th, (0≦n_(k)≦N−1) row of σ(C−{tilde over (C)}), i.e., the k-th row of G_(p) ₀ will be transmitted at the n_(k)-th subcarrier. Then, all the (n_((m−1)Γ+i),n_((m−1)Γ+j))-th entries of σ(C−{tilde over (C)})σ(C−{tilde over (C)})^(ψ), 1≦i,j≦Γ and 1≦m≦M_(t), are zero and the other entries are zero. Thus, all the entries of [σ(C−{tilde over (C)})σ(C−{tilde over (C)})^(ψ)]∘R. are zeros, except for (n_((m−1)Γ+i),n_((m−1)Γ+j))-th entries for 1≦i,j≦Γ and 1≦m≦M_(t). Define, now, the matrices A_(m), m=1, 2, . . . , M_(t), such that the (i,j)-th, (1≦i,j≦Γ), entry of A_(m) is the (n_((m−1)Γ+i),n_((m−1)r+j))-th entry of [σ(C−{tilde over (C)})σ(C−{tilde over (C)})^(ψ)]∘R. Since the correlation matrix R is a Toeplitz matrix, the (i,j)-th, 1≦i, j≦Γ, entry of A_(m) can be expressed as $\begin{matrix} {{M_{t}\Delta\quad x_{q}\Delta\quad x_{r}^{*}{\sum\limits_{l = 0}^{L - 1}\quad{\delta_{l}^{2}\omega^{{({n_{q} - n_{r}})}\tau_{l}}}}},} & (51) \end{matrix}$ where q=(m−1)Γ+i and r=(m−1)Γ+j. Note that the non-zero eigenvalues of [σ(C−{tilde over (C)})(C−{tilde over (C)})^(ψ)]∘R are determined by the matrices A_(m), m=1, 2, . . . , M_(t). The product of the non-zero eigenvalues of [σ(C−{tilde over (C)})σ(C−{tilde over (C)})ψ]∘R. λ₁, λ₂, . . . , λ_(ΓM) _(t) , can be calculated as $\begin{matrix} {{\prod\limits_{k = 1}^{\Gamma\quad M_{t}}\quad\lambda_{k}} = {\prod\limits_{m = 1}^{M_{t}}\quad{{{\det\quad\left( A_{m} \right)}}.}}} & (52) \end{matrix}$ From (51), for each m=1, 2, . . . , M_(t), the Γ×Γ matrix A_(m) can be decomposed as follows: $\begin{matrix} \begin{matrix} {{A_{m} = {D_{m}W_{m}\Lambda\quad W_{m}^{\Psi}D_{m}^{\Psi}}},{where}} \\ {where} \end{matrix} & (53) \\ \begin{matrix} {{\Lambda = {{diag}\quad\left( {\delta_{0}^{2},\delta_{1}^{2},\ldots\quad,\delta_{L - 1}^{2}} \right)}},} \\ {{D_{m} = {\sqrt{M_{t}}{diag}\quad\left( {{\Delta\quad x_{{{({m - 1})}\quad\Gamma} + 1}},{\Delta\quad x_{{{({m - 1})}\quad\Gamma} + 2}},\ldots\quad,{\Delta\quad x_{m\quad\Gamma}}} \right)}},} \\ {W_{m} = {\begin{bmatrix} \omega^{n_{{{({m - 1})}\Gamma} + 1}\tau_{0}} & \omega^{n_{{{({m - 1})}\Gamma} + 1}\tau_{1}} & \cdots & \omega^{n_{{{({m - 1})}\Gamma} + 1}\tau_{L - 1}} \\ \omega^{n_{{{({m - 1})}\Gamma} + 2}\tau_{0}} & \omega^{n_{{{({m - 1})}\Gamma} + 2}\tau_{1}} & \cdots & \omega^{n_{{{({m - 1})}\Gamma} + 2}\tau_{L - 1}} \\ \vdots & \vdots & ⋰ & \vdots \\ \omega^{n_{m\quad\Gamma}\tau_{0}} & \omega^{n_{m\quad\Gamma}\tau_{0}} & \ldots & \omega^{n_{m\quad\Gamma}\tau_{L - 1}} \end{bmatrix}.}} \end{matrix} & (54) \end{matrix}$ As a consequence, the determinant of A_(m) is given by $\begin{matrix} {{\det\quad\left( A_{m} \right)} = {M_{t}^{\Gamma}{\prod\limits_{i = 1}^{\Gamma}\quad{{{\Delta\quad x_{{{({m - 1})}\Gamma} + i}}}^{2}\det\quad{\left( {W_{n}\Lambda\quad W_{m}^{\Psi}} \right).}}}}} & (55) \end{matrix}$ Substituting (55) into (52), the expression for the product of the non-zero eigenvalues of [σ(C−{tilde over (C)})σ(C−{tilde over (C)})ψ]∘R takes the form $\begin{matrix} {{\prod\limits_{k = 1}^{\Gamma\quad M_{t}}\quad\lambda_{k}} = {M_{t}^{\Gamma\quad M_{t}}{\prod\limits_{k = 1}^{\Gamma\quad M_{t}}{{{\Delta\quad x_{k}}}^{2}{\prod\limits_{m = 1}^{M_{t}}\quad{{{\det\quad\left( {W_{m}\Lambda\quad W_{m}^{\Psi}} \right)}}.}}}}}} & (56) \end{matrix}$ Therefore, the diversity product of the permuted SF code can be calculated as $\begin{matrix} {{\zeta = {{\frac{1}{2}{\min\limits_{X \neq \overset{\sim}{X}}{\left( {\prod\limits_{k = 1}^{\Gamma\quad M_{t}}{{\Delta\quad x_{k}}}} \right)^{\frac{1}{\Gamma\quad M_{t}}}\left( {\prod\limits_{m = 1}^{M_{t}}\quad{{\det\quad\left( {W_{m}\Lambda\quad W_{m}^{\Psi}} \right)}}} \right)^{\frac{1}{2\Gamma\quad M_{t}}}}}} = {\zeta_{in} \cdot \zeta_{ex}}}},} & (57) \end{matrix}$ where ζ_(in) is the intrinsic diversity product defined in (37), and ζ_(ex) is the “extrinsic” diversity product, is defined by $\begin{matrix} {\zeta_{ex} = {\left( {\prod\limits_{m = 1}^{M_{t}}\quad{{\det\quad\left( {W_{m}\Lambda\quad W_{m}^{\Psi}} \right)}}} \right)^{\frac{1}{2\Gamma\quad M_{t}}}.}} & (58) \end{matrix}$ The extrinsic diversity product ζ_(ex) depends only on the permutation and the power delay profile of the channel. The permutation does not affect the intrinsic diversity product ζ_(in).

From (54), for each m=1, 2, . . . , M_(t), W_(m) can be written as W _(m) =V _(m) ·diag(ω^(n) ^((m−1)Γ+1) ^(τ) ⁰ , ω^(n) ^((m−1)Γ+1) ^(τ) ¹ , . . . , ω^(n) ^((m−1)Γ+1) ^(τ) ^(L−1) ),  (59) where $\begin{matrix} {V_{m} = {\begin{bmatrix} 1 & 1 & \ldots & 1 \\ \omega^{{\lbrack{n_{{{({m - 1})}\Gamma} + 2} - n_{{{({m - 1})}\Gamma} + 1}}\rbrack}\tau_{0}} & \omega^{{\lbrack{n_{{{({m - 1})}\Gamma} + 2} - n_{{{({m - 1})}\Gamma} + 1}}\rbrack}\tau_{1}} & \ldots & \omega^{{\lbrack{n_{{{({m - 1})}\Gamma} + 2} - n_{{{({m - 1})}\Gamma} + 1}}\rbrack}\tau_{L - 1}} \\ \vdots & \vdots & ⋰ & \vdots \\ \omega^{{\lbrack{n_{m\quad\Gamma} - n_{{{({m - 1})}\Gamma} + 1}}\rbrack}\tau_{0}} & \omega^{{\lbrack{n_{m\quad\Gamma} - n_{{{({m - 1})}\Gamma} + 1}}\rbrack}\tau_{1}} & \ldots & \omega^{{\lbrack{n_{m\quad\Gamma} - n_{{{({m - 1})}\Gamma} + 1}}\rbrack}\tau_{L - 1}} \end{bmatrix}.}} & (60) \end{matrix}$ Thus, det(W_(m)ΛW_(m) ^(ψ))=det(V_(m)ΛV_(m) ^(ψ)). It is to be observed that the determinant of W_(m)ΛW_(m) ^(ψ) depends only on the relative positions of the permuted rows with respect to the position n_((m−1)Γ+1), not on their absolute positions.

Thus, another fundamental aspect of the present invention is revealed. For any subcarrier permutation, the diversity product of the resulting SF code is ζ=ζ_(in)·ζ_(ex)  (61) where ζ_(in) and ζ_(ex) are the “intrinsic” and “extrinsic” diversity products defined in (37) and (58), respectively. Moreover, the extrinsic diversity product ζ_(ex) is upper bounded as: (i) ζ_(ex)≦1; and more precisely, (ii) if the power profile δ₀, δ₁, . . . , δ_(L−1) is sorted in a non-increasing order as: δ_(l) ₁ ≧δ_(l) ₂ ≧ . . . ≧δ_(l) _(L) then $\begin{matrix} {{\zeta_{ex} \leq {\left( {\prod\limits_{i = 1}^{\Gamma}\quad\delta_{l_{i}}} \right)^{\frac{1}{\Gamma}}{{\prod\limits_{m = 1}^{M_{t}}\quad{\det\quad\left( {V_{m}\quad V_{m}^{\Psi}} \right)}}}^{\frac{1}{2\Gamma\quad M_{t}}}}},} & (62) \end{matrix}$ where equality holds when Γ=L. As a consequence, $\begin{matrix} {\zeta_{ex} \leq {\sqrt{L}\quad{\left( {\prod\limits_{i = 1}^{\Gamma}\quad\delta_{l_{i}}} \right)^{\frac{1}{\Gamma}}.}}} & (63) \end{matrix}$

It is to be observed from the discussion above that the extrinsic diversity product ζ_(ex) depends on the power delay profile in two ways. First, it depends on the power distribution through the square root of the geometric average of the largest Γ path powers, i.e., (Π_(i=1) ^(Γ)δ_(l) _(i) )^(1/Γ). In case of Γ=L, the best performance is expected if the power distribution is uniform (i.e., δ_(l) ²=1/L), since the sum of the path powers is unity. Second, the extrinsic diversity product ζ_(ex) also depends on the delay distribution and the applied subcarrier permutation. On the other hand, the intrinsic diversity product, ζ_(in), is not effected by the power delay profile or the permutation method. It only depends on the signal constellation and the SF code design via the achieved minimum product distance.

By carefully choosing the applied permutation method, the extrinsic diversity product ζ_(ex) may be increased so as to improve the overall performance of the SF code. Toward this end, certain embodiments of the invention may employ any of the following exemplary permutation strategies.

In certain embodiments of the invention, an integer n(0≦n≦N−1) is decomposed into n=e ₁ Γ+e ₀,  (64) where 0≦e₀≦Γ−1, ${e_{1} = \left\lfloor \frac{n}{\Gamma} \right\rfloor},$ and └x┘ denotes the largest integer not greater than x. For a fixed integer μ, (μ≧1), e₁ in (64) is itself decomposed into e ₁=ν₁μ+ν₀,  (65) where 0≦ν₀≦μ−1 and $v_{1} = {\left\lfloor \frac{e_{1}}{\mu} \right\rfloor.}$ The rows of the N×M_(t) SF codeword constructed in accordance with (28) and (29) are permuted in such a way that the n-th (0≦n≦N−1) row of C is moved to the σ(n)-th row, where σ(n)=ν₁ μΓ+e ₀μ+ν₀,  (66) where e₀,ν₀,ν₁, are defined in (64) and (65). The integer μ is referred to as the separation factor, and should be chosen such that σ(n)≦N for any 0≦n≦N−1, or equivalently, $\mu \leq \left\lfloor \frac{N}{\Gamma} \right\rfloor$ Moreover, in order to guarantee that the mapping (66) is one-to-one over the set {0, 1, . . . , N−1} (i.e., it defines a permutation), μ must be a factor of N. The role of the permutation specified in (66) is to separate two neighboring rows of C by μ subcarriers.

The following result characterizes the extrinsic diversity product of the SF code that is permuted with the above described method. For the permutation specified in (66) with a separation factor μ, the extrinsic diversity product of the permuted SF code is $\begin{matrix} {{\zeta_{ex} = {{\det\quad\left( {V_{0}\Lambda\quad V_{0}^{\Psi}} \right)}}^{\frac{1}{2\Gamma}}},{where}} & (67) \\ {V_{0} = \begin{bmatrix} 1 & 1 & \ldots & 1 \\ \omega^{{\mu\tau}_{0}} & \omega^{{\mu\tau}_{1}} & \ldots & \omega^{{\mu\tau}_{L - 1}} \\ \omega^{2{\mu\tau}_{0}} & \omega^{2{\mu\tau}_{1}} & \ldots & \omega^{2{\mu\tau}_{L - 1}} \\ \vdots & \vdots & ⋰ & \vdots \\ \omega^{{({\Gamma - 1})}{\mu\tau}_{0}} & \omega^{{({\Gamma - 1})}{\mu\tau}_{1}} & \ldots & \omega^{{({\Gamma - 1})}{\mu\tau}_{L - 1}} \end{bmatrix}_{\Gamma \times L}} & (68) \end{matrix}$ Moreover, if Γ=L, the extrinsic diversity product ζ_(ex) can be calculated as $\begin{matrix} {\zeta_{ex} = {\left( {\prod\limits_{l = 0}^{L - 1}\quad\delta_{l}} \right)^{\frac{1}{L}}{\left( {\prod\limits_{0 \leq l_{1} < l_{2} \leq {L - 1}}\quad{{2\quad{\sin\left( \frac{\mu\quad\left( {\tau_{l_{2}} - \tau_{l_{1}}} \right)\quad\pi}{T} \right)}}}} \right)^{\frac{1}{L}}.}}} & (69) \end{matrix}$

The permutation (66) is determined by the separation factor μ. Among the objectives of the invention is to find a separation factor μ_(op) that maximizes the extrinsic diversity product ζ_(ex): $\begin{matrix} {\mu_{op} = {\arg\quad{\max\limits_{1 \leq \mu \leq {\lfloor{N/\Gamma}\rfloor}}{{{\det\left( {V_{0}\Lambda\quad V_{0}^{\Psi}} \right)}}.}}}} & (70) \end{matrix}$ If Γ=L, the optimum separation factor μ_(op) can be expressed as $\begin{matrix} {{\mu_{op} = {\arg\quad{\max\limits_{1 \leq \mu \leq {\lfloor{N/\Gamma}\rfloor}}{\prod\limits_{0 \leq l_{1} < l_{2} \leq {L - 1}}{{\sin\left( \frac{{\mu\left( {\tau_{l_{2}} - \tau_{l_{1}}} \right)}\pi}{T} \right)}}}}}},} & (71) \end{matrix}$ which is independent of the signal power along individual paths. The optimum separation factor can be easily found via, for example, a low complexity computer search. However, in certain cases, closed form solutions can also be obtained. For example, if Γ=L=2, the extrinsic diversity product ζ_(ex) is $\begin{matrix} {\zeta_{ex} = {\sqrt{\delta_{0}\delta_{1}}{{{2\quad{\sin\left( \frac{{\mu\left( {\tau_{1} - \tau_{0}} \right)}\pi}{T} \right)}}}^{\frac{1}{2}}.}}} & (72) \end{matrix}$ To illustrate, consider an exemplary embodiment of the invention having N=128 subcarriers, and a total bandwidth of BW=1 MHz. Then, the OFDM block duration is T=128 μs without the cyclic prefix. If τ₁−τ₀=5 μs, then μ_(op)=64 and ζ_(ex) √{square root over (2δ₀δ₁)}. If τ_(l)−τ₀=20 μs then μ_(op)=16 and ζ_(ex)=√{square root over (2δ₀δ₁)}. In general, if τ_(l)−τ₀=2^(a)b μs, where a is an non-negative integer and b is an odd integer, μ_(op)=128/2^(a+1), and the extrinsic diversity product is ζ_(ex) √{square root over (2δ₀δ₁)}, which achieves the upper bound (58) of the diversity product (61).

As a further example of a closed form determination of the optimum separation factor, assume that τ₁−τ₀=lN₀T/N, l=1, 2, . . . , L−1 and N is an integer multiple of LN₀, where N₀ is a constant and not necessarily an integer. If Γ=L or δ₀ ²=δ₁ ²= . . . =δ_(L−1) ²=1/L, the optimum separation factor is $\begin{matrix} {{\mu_{op} = \frac{N}{L\quad N_{0}}},} & (73) \end{matrix}$ and the corresponding extrinsic diversity product is ζ_(ex)=√{square root over (L)}(Π_(l=0) ^(L−1)δ_(l))^(l/L). In particular, in the case where δ₀ ²=δ₁ ²= . . . =δ_(L−1) ²=1/L, ζ_(ex)=1. In both cases, the upper bound of the extrinsic diversity products is achieved. Note that if τ_(l)=lT/N for l=0, 1, . . . , L−1, Γ=L and N is an integer multiple of L, the permutation with the optimum separation factor μ_(op)=N/L is similar to a known prior art optimum subcarrier grouping method, which, however, is not optimal for arbitrary power delay profiles.

As an illustrative example of the aspects of the invention described above, the optimum separation factors for two commonly used multipath fading models will now be determined. The COST 207 6-ray power delay profiles for typical urban (TU) and hilly terrain (HT) environment are described in Tables 1 and 2, respectively. Two different bandwidths are considered: a) BW=1 MHz, and b) BW=4 MHz. In the exemplary embodiment, the OFDM has N=128 subcarriers. The plots of the extrinsic diversity product ζ_(ex) as the function of the separation factor μ for the TU and HT channel models are shown in FIGS. 4A-4B and FIGS. 5A-5B, respectively. In each Figure, the curves of the extrinsic diversity product are depicted for different Γ(2≦Γ≦L) values. Note that for a fixed Γ, Γ=2, 3, . . . , L, the separation factor μ cannot be greater than └N/Γ┘. TABLE 1 Typical Urban (TU) 6 ray power delay profile Delay profile (μs) 0.0 0.2 0.5 1.6 2.3 5.0 Power profile 0.189 0.379 0.239 0.095 0.061 0.037

TABLE 2 Hilly Terrain (HT) 6 ray power delay profile Delay profile (μs) 0.0 0.1 0.3 0.5 15.0 17.2 Power profile 0.413 0.293 0.145 0.074 0.066 0.008

Referring to the Γ=2 case, there is shown in FIG. 4A the TU channel model with BW=1 MHz. As is shown in the Figure, the maximum extrinsic diversity product is ζ_(ex)=0.8963. The corresponding separation factor is μ_(op)=40. In such a case, however, μ=64 may be chosen so as to ensure one-to-one mapping, which results in an extrinsic diversity product ζ_(ex)=0.8606. For the UT channel model with BW=4 MHz, as shown in FIG. 4B, the maximum extrinsic diversity product is ζ_(ex)=0.9998, which approaches the unity upper bound. The corresponding separation factor is μ_(op)=51. For similar reasons as in the previous case, μ=64 may be chosen to generate the appropriate permutation. The resulting extrinsic diversity product is ζ_(ex)=0.9751, which is a slight performance loss compared to the maximum value ζ_(ex)=0.9998.

Referring to FIG. 5A, there is shown an illustrative example of a 6-ray HT channel model with BW=1 MHz. The maximum extrinsic diversity product, as is shown, is ζ_(ex)=0.8078. The corresponding separation factor is μ_(op)=64, which allows easy implementation of a permutation. For the HT channel model with BW=4 MHz, as shown in FIG. 5B, the maximum extrinsic diversity product is ζ_(ex)=0.9505 and the corresponding separation factor is μ_(op)=46. To ensure one-to-one mapping, μ=64 may be chosen, which results in an extrinsic diversity product ζ_(ex)=0.9114.

To demonstrate aspects of the invention, consider a MIMO-OFDM system having M_(t)=2 transmit antennas, M_(r)=1 receive antenna and N=128 subcarriers. Full-rate full-diversity SF codes were constructed according to (28) and (29) with Γ=2, yielding the code block structure $\begin{matrix} {G = {{\sqrt{2}\begin{bmatrix} x_{1} & 0 \\ x_{2} & 0 \\ 0 & x_{3} \\ 0 & x_{4} \end{bmatrix}}.}} & (74) \end{matrix}$ The symbols x₁, x₂, x₃, x₄ were obtained as $\begin{matrix} {{\left\lbrack {x_{1}\quad x_{2}\quad x_{3}\quad x_{4}} \right\rbrack = {{\left\lbrack {s_{1}\quad s_{2}\quad s_{3}\quad s_{4}} \right\rbrack \cdot \frac{1}{2}}{V\left( {\theta,{- \theta},{j\quad\theta},{{- j}\quad\theta}} \right)}}},} & (75) \end{matrix}$ where s₁, s₂, s₃, s₄ were chosen from BPSK constellation (s_(i)ε{1,−1}) or QPSK constellation (s_(i)ε{±1,±j}), V(•) is the Vandermonde matrix defined in (39), and θ=e^(jπ/8). This code targets a frequency diversity order of Γ=2, thus it achieves full diversity only if the number of delay paths is L≦2.

The SF codes of the present invention were implemented with three permutation schemes: no permutation, random permutation, and the optimum permutation method of the present invention. The random permutation was generated by the known Takeshita-Constello method, which is given by $\begin{matrix} {{{\sigma(n)} = {\left( \frac{n\left( {n + 1} \right)}{2} \right){mod}{\quad\quad}N}},{n = 0},1,\cdots\quad,{N - 1.}} & (76) \end{matrix}$ The performance of the illustrative systems are presented herein in terms of average bit error rate (BER), and are shown in the Figures as functions of the average signal-to-noise ratio (SNR). In all of the illustrative results, the curves with squares, pluses and stars show the performance of the proposed full-rate full-diversity SF codes without permutation, with the random permutation (76) and with the inventive optimum permutation, respectively.

To compare the performance of the full-rate full-diversity SF coding schemes of the invention using different permutation schemes, the code (74) was implemented with the channel symbols S₁, s₂, s₃, s₄ chosen from BPSK constellation. The symbol rate of this code is 1, and its spectral efficiency is 1 bit/s/Hz, ignoring the cyclic prefix.

An illustrative system utilized a simple 2-ray, equal-power delay profile, with a delay τ μs between the two rays was respectively implemented in accordance with two cases: a) τ=5 μs, and b) τ=20 μs with OFDM bandwidth BW=1 MHz. From the BER curves, shown in FIG. 6A and FIG. 6B, it is observed that the performance of the proposed SF code with the random permutation is better than that without permutation. In case of τ=5 μs, the performance improvement is more significant. With the inventive optimum permutation, the performance is further improved. In case of τ=5 μs, there is a 3 dB gain between the optimum permutation of the present invention (μ_(op)=64) and the random permutation at a BER of 10⁻⁵. In case of τ=20 μs, the performance improvement of the inventive optimum permutation (μ_(op)=16) over the random permutation is about 2 dB at a BER of 10⁻⁵. If no permutation is used, the performance of the code in the τ=5 μs case (ζ_(ex)=0.3499) is worse than that in the τ=20 μs case (ζ_(ex)=0.6866). However, if the optimum permutation of the present invention is applied, the performance of the SF code in both the τ=5 μs case (μ_(op)=64, ζ_(ex)=1) and the τ=20 μs case (μ_(op)=16, ζ_(ex)=1) is approximately the same. This confirms that by careful design of an interleaver to perform the permutation, the performance of the SF codes can be significantly improved. What is also shown is that the extrinsic diversity product ζ_(ex) provides a good indicator of a particular code's performance.

The code (74) was also implemented with the TU and HT channel models in accordance with two situations: a) BW=1 MHz, and b) BW=4 MHz. FIGS. 7A-7B provide the performance results of the code with different permutations for the TU channel model, from which it may be observed that in both cases, the code with random permutation has a significant improvement over the non-permuted code. Using the inventive permutation with a separation factor μ=64, there is an additional gain of 1.5 dB and 1 dB at a BER of 10⁻⁵ in case of BW=1 MHz and BW=4 MHz, respectively.

FIGS. 8A-8B depicts the illustrative results for the HT channel model. As is shown in the BW=1 MHz case, the performance gain of the permuted codes is larger than in the BW=4 MHz case. In both cases, the code with the permutation of the present invention (μ=64) outperforms the code with the random permutation. There is a 1.5 dB performance improvement at a BER of 10⁻⁵ in case of BW=1 MHz, and a 1 dB improvement in case of BW=4 MHz.

The SF code of the present invention is a clear improvement over systems of the prior art in that full-rate transmission may be achieved with full-diversity in the space-frequency domain. However, certain implementations will require a shift in operating principles of existing systems, which may not be desirable. New codes in compliance with the present invention would replace old codes of existing systems, which, in certain cases, may be cost prohibitive. To provide certain ones of the advantageous features of the present invention, while, at the same time, utilizing some existing infrastructure, SF codes may be mapped, in accordance with aspects of the present invention, from existing space-time (ST) codes.

5. Space-Frequency (SF) Codes from Space-Time (ST) Codes via Mapping

Among the beneficial features of the invention is a simple repetition mapping, from which full-diversity SF codes can be constructed from any ST (block or trellis) code designed for quasistatic flat Rayleigh fading channels.

As shown in FIG. 2, the SF encoder 230 consists of an ST encoder 234 and mapping unit 236 for performing a mapping F_(l). For each 1×M_(t) output vector (g₁ g₂ . . . g_(m) _(t) ) from the ST encoder 230 and a fixed number l (1≦l≦L), the mapping being defined as F _(l): (g ₁ g ₂ . . . g _(M) _(t) )→1_(l×1)(g ₁ g ₂ . . . g _(M) _(t),  (77) where 1_(l×1), is an all one matrix of size l×1. The resulting l×M_(t) matrix is actually a representation of the vector (g₁ g₂ . . . g_(M) _(t) ) 1 times. Suppose that lM_(t) is not greater than the number of OFDM subcarriers N, and k is the largest integer such that klM_(t)≦N. Denote the output code matrix of the ST encoder by G. Note that for a space-time block encoder, G is a concatenation of some block codewords. For a space-time trellis encoder, G corresponds to the path of length kM_(t) starting and ending at the zero state. Then, the SF code C of size N×M_(t) is constructed as $\begin{matrix} {C = {\begin{bmatrix} {F_{l}(G)} \\ 0_{({N - {{klM}_{t} \times M_{t}}})} \end{bmatrix}\quad{where}}} & (78) \\ {{F_{l}(G)} = {\left\lbrack {I_{M_{t}} \otimes 1_{l \times 1}} \right\rbrack G}} & (79) \end{matrix}$ In fact, SF code C is obtained by repeating each row of G l times and adding some zeros. The zero padding used here ensures that the space-frequency code C has size N×M_(t). Typically, the size of the zero padding is small, and it can be used to drive the trellis encoder to the zero state. According to the present invention, if the employed ST code G has full diversity for quasistatic flat fading channels, the space-frequency code constructed by (78) will achieve a diversity of at least lM_(t)M_(r).

As shown in FIG. 2, a MIMO-OFDM system is equipped with M_(t) transmit antennas 210 and M_(r) receive antennas 220, and has N subcarriers and that the frequency-selective channel 250 has L independent paths, in which the maximum path delay is less than one OFDM block period. If an ST (block or trellis) code designed for M_(t) transmit antennas achieves full diversity for quasistatic flat fading channels, then the SF code (78) from the ST code in accordance with the mapping of the present invention, F_(l)(1≦l≦L) defined in (79) will achieve a diversity order of at least min {lM_(t)M_(r)NM_(r)}.

To show this to be true, it is known that in typical MIMO-OFDM systems, the number of subcarriers N is greater than LM_(t), and, thus, the proof for the lM_(t)≦N case may be shown for a given mapping F_(l), 1≦≦L. If lM_(t)>N, the proof follows similar lines, but will be omitted for brevity. Assume that k is the largest integer such that klM_(t)≦N.

For two distinct codewords C and {tilde over (C)} of size N×M_(t), there are two corresponding codewords G and {tilde over (G)} of size kM_(t)×M_(t) such that $\begin{matrix} {{C - \overset{\sim}{C}} = {\begin{bmatrix} {F_{l}\left( {G - \overset{\sim}{G}} \right)} \\ 0_{{({N - {klM}_{t}})} \times M_{t}} \end{bmatrix}\quad{in}\quad{which}}} & (80) \\ {{{F_{l}\text{(}G} - {\overset{\sim}{G}\text{)}}} = {{\left\lbrack {I_{M_{t}} \otimes 1_{l \times 1}} \right\rbrack\text{(}G} - {\overset{\sim}{G}{\text{)}.}}}} & (81) \end{matrix}$ Since the ST code achieves full diversity for quasistatic flat fading channels, (G−{tilde over (G)}) is of full rank for two distinct G and {tilde over (G)}, i.e., the rank of (G−{tilde over (G)}) is M_(t).

Using the performance criteria described above, the objective of the proof is to show that the matrix Δ∘R has a rank of at least lM_(t). From (25) and (80), it is observed $\begin{matrix} {\Delta = {\begin{bmatrix} {{F_{l}\left( {G - \overset{\sim}{G}} \right)}\left\lbrack {F_{l}\left( {G - \overset{\sim}{G}} \right)} \right\rbrack}^{\Psi} & 0_{{klM}_{t} \times {({N - {klM}_{t}})}} \\ 0_{{({N - {klM}_{t}})} \times {klM}_{t}} & 0_{{({N - {klM}_{t}})} \times {({N - {klM}_{t}})}} \end{bmatrix}.}} & (82) \end{matrix}$ Thus, in Δ∘R, all entries are zero, except for a klM_(t)×klM_(t) submatrix, which will be denoted as (Δ∘R)_(klM) _(t) _(×klM) _(t) .

On the other hand, from (24), it can be verified that the entries of the correlation matrix R={r_(i,j)}_(1≦i,j≦N) can be expressed as ${r_{i,j} = {\sum\limits_{s = 0}^{L - 1}{\delta_{s}^{2}w^{{({i - j})}\tau_{s}}}}},{1 \leq i},{j \leq {N.}}$ Therefore, from (80)-(82), it can be ascertained that $\begin{matrix} \begin{matrix} {\left( {\Delta \cdot R} \right)_{{klM}_{t} \times {klM}_{t}} = {\left\{ {{F_{l}\left( {G - \overset{\sim}{G}} \right)}\left\lbrack {F_{l}\left( {G - \overset{\sim}{G}} \right)} \right\rbrack}^{\Psi} \right\} \cdot P}} \\ {= {\left\{ {\left\lbrack {I_{M_{t}} \otimes 1_{l \times 1}} \right\rbrack\left( {G - \overset{\sim}{G}} \right){\left( {G - \overset{\sim}{G}} \right)^{\Psi}\left\lbrack {I_{M_{t}} \otimes 1_{l \times 1}} \right\rbrack}^{\Psi}} \right\} \cdot}} \\ {P} \\ {= {\left\{ {\left\lbrack {\left( {G - \overset{\sim}{G}} \right)\left( {G - \overset{\sim}{G}} \right)^{\Psi}} \right\rbrack \otimes 1_{l \times 1}} \right\} \cdot P}} \end{matrix} & (83) \end{matrix}$ where P={p_(i,j)}_(1≦i,j≦klM) _(t) is a klM_(t)×klM_(t) matrix with entries $\begin{matrix} {{p_{i,j} = {\sum\limits_{s = 0}^{L - 1}{\delta_{s}^{2}w^{{({i - j})}\tau_{s}}}}},{1 \leq i},{j \leq {{klM}_{t}.}}} & (84) \end{matrix}$ The last equality in (83) follows from the identities [I_(kM) _(t){circle around (×)}1_(1×l)]^(ψ) and (A₁{circle around (×)}B₁)(A₂{circle around (×)}B₂)(A₃{circle around (×)}B₃)=(A₁A₂A₃){circle around (×)}(B₁B₂B₃).

The klM_(t)×klM_(t) matrix P is further partitioned into l×l submatrices as follows: $\begin{matrix} {P = \begin{bmatrix} P_{1,1} & P_{1,2} & \cdots & P_{1,{kM}_{t}} \\ P_{2,1} & P_{2,2} & \cdots & P_{2,{kM}_{t}} \\ \vdots & \vdots & ⋰ & \vdots \\ P_{{kM}_{t},1} & P_{{kM}_{t},2} & \cdots & P_{{kM}_{t},{kM}_{t}} \end{bmatrix}} & (85) \end{matrix}$ where each submatrix P_(m,n), 1≦m,n≦kM_(t) is of size l×l. Denoting the entries of P_(m,n) as p_(m,n) (i,j), 1≦i,j≦l, it is observed that $\begin{matrix} {{{p_{m,n}\left( {i,j} \right)} = {\sum\limits_{s = 0}^{L - 1}{\delta_{s}^{2}w^{{\lbrack{{{({m - n})}l} + {({i - j})}}\rbrack}\tau_{s}}}}},{1 \leq i},{j \leq {l.}}} & (86) \end{matrix}$ As a consequence, each submatrix P_(m,n), 1≦m,n≦kM_(t), can be expressed as P _(m,n) =W _(m) diag{δ ₀ ², δ₁ ², . . . δ_(L−1) ² }W _(n) ^(ψ)  (87) where W_(m) is specified as $\begin{matrix} {W_{m} = \begin{bmatrix} w^{{({m - 1})}l\quad\tau_{0}} & w^{{({m - 1})}l\quad\tau_{1}} & \cdots & w^{{({m - 1})}l\quad\tau_{L - 1}} \\ w^{{\lbrack{{{({m - 1})}l} + 1}\rbrack}\tau_{0}} & w^{{\lbrack{{{({m - 1})}l} + 1}\rbrack}\tau_{1}} & \cdots & w^{{\lbrack{{{({m - 1})}l} + 1}\rbrack}\tau_{L - 1}} \\ \vdots & \vdots & ⋰ & \vdots \\ w^{{\lbrack{{{({m - 1})}l} + {({l - 1})}}\rbrack}\tau_{0}} & w^{{\lbrack{{{({m - 1})}l} + {({l - 1})}}\rbrack}\tau_{1}} & \cdots & w^{{\lbrack{{{({m - 1})}l} + {({l - 1})}}\rbrack}\tau_{L - 1}} \end{bmatrix}} & (88) \end{matrix}$ for m=1, 2, . . . , kM_(t). The matrix (88) can be further decomposed as W _(m) =W _(l) diag {w ^((m−1)/τ) ⁰ , W ^((m−1)/τ) ¹ , . . . . w ^((m−1)/τ) ^(L−1) }  (89) for 1≦m≦kM_(t), where $\begin{matrix} {W_{1} = {\begin{bmatrix} 1 & 1 & \cdots & 1 \\ w^{\tau_{0}} & w^{~\tau_{1}} & \cdots & w^{\tau_{L - 1}} \\ \vdots & \vdots & ⋰ & \vdots \\ w^{{({l - 1})}\tau_{0}} & w^{{({l - 1})}\tau_{1}} & \cdots & w^{{({l - 1})}\tau_{L - 1}} \end{bmatrix}.}} & (90) \end{matrix}$ The matrix consisting of the first l columns if W₁ may be denoted by W₀. In so doing, W₀ is an l×l Vandermonde matrix in l variables w^(τ) ⁰ , w^(τ) ¹ , . . . , w^(τ) ^(l−1) . The determinant of W₀ can be calculated as follows: $\begin{matrix} \begin{matrix} {{\det\left( W_{0} \right)} = {\prod\limits_{0 \leq i \leq j \leq {l - 1}}\left( {w^{\tau_{j}} - w^{\tau_{s}}} \right)}} \\ {= {\prod\limits_{0 \leq i \leq j \leq {l - 1}}{\left\lbrack {{\mathbb{e}}^{{- {j2\pi\Delta}}\quad{f{({\tau_{j} - \tau_{i}})}}} - 1} \right\rbrack{{\mathbb{e}}^{{- {j2\pi\Delta}}\quad f\quad\tau_{i}}.}}}} \end{matrix} & (91) \end{matrix}$

Since Δf is the inverse of the OFDM block period T and the maximum path delay is less than T, Δf (τ_(j)−τ_(i))<1 for any 0≦i<j≦l−1. Thus, W₀ is of full rank, as is W₁. It follows that for any m=1, 2, . . . , kM_(t), the rank of W_(m) is l.

Returning to (83), the rank of Δ∘R can be investigated. For convenience, the following notation is used: $\begin{matrix} {{\left( {G - \overset{\sim}{G}} \right)\left( {G - \overset{\sim}{G}} \right)^{H}}\overset{\Delta}{=}\begin{bmatrix} a_{1,1} & a_{1,2} & \cdots & a_{1,{kM}_{t}} \\ a_{2,1} & a_{2,2} & \cdots & a_{2,{kM}_{t}} \\ \vdots & \vdots & ⋰ & \vdots \\ a_{{kM}_{t},1} & a_{{kM}_{t},2} & \cdots & a_{{kM}_{t},{kM}_{t}} \end{bmatrix}} & (92) \end{matrix}$ and Λ=diag{δ₀ ², δ₁ ², δ_(L−1) ²,}. Then, substituting (85) and (87) into (83), it is observed that $\begin{matrix} {\begin{matrix} {\left( {\Delta \cdot R} \right)_{{klM}_{t} \times {klM}_{t}} = \begin{bmatrix} {a_{1,1}P_{1,1}} & {a_{1,2}P_{1,2}} & \cdots & {a_{1,{kM}_{t}}P_{1,{kM}_{t}}} \\ {a_{2,1}P_{2,1}} & {a_{2,2}P_{2,2}} & \cdots & {a_{2,{kM}_{t}}P_{2,{kM}_{t}}} \\ \vdots & \vdots & ⋰ & \vdots \\ {a_{{kM}_{t},1}P_{{kM}_{t},1}} & {a_{{kM}_{t},2}P_{{kM}_{t},2}} & \cdots & {a_{{kM}_{t},{kM}_{t}}P_{{kM}_{t},{kM}_{t}}} \end{bmatrix}} \\ {= \begin{bmatrix} {W_{1}a_{1,1}\Lambda\quad W_{1}^{\Psi}} & {W_{1}a_{1,1}\Lambda\quad W_{2}^{\Psi}} & \cdots & {W_{1}a_{1,{kM}_{t}}\Lambda\quad W_{{kM}_{t}}^{\Psi}} \\ {W_{2}a_{2,1}\Lambda\quad W_{1}^{\Psi}} & {W_{2}a_{2,2}\Lambda\quad W_{2}^{\Psi}} & \cdots & {W_{2}a_{2,{kM}_{t}}\Lambda\quad W_{{kM}_{t}}^{\Psi}} \\ \vdots & \vdots & ⋰ & \vdots \\ {W_{{kM}_{t}}a_{{kM}_{t},1}\Lambda\quad W_{1}^{\Psi}} & {W_{{kM}_{t}}a_{{kM}_{t},2}\Lambda\quad W_{2}^{\Psi}} & \cdots & {W_{{kM}_{t}}a_{{kM}_{t}}\Lambda\quad W_{{kM}_{t}}^{\Psi}} \end{bmatrix}} \\ {= {Q\left\{ {\left\lbrack {\left( {G - \overset{\sim}{G}} \right)\left( {G - \overset{\sim}{G}} \right)^{\Psi}} \right\rbrack \otimes \Lambda} \right\} Q^{\Psi}}} \end{matrix}{where}{Q = {{diag}{\left\{ {W_{1},W_{2},\cdots\quad,W_{{kM}_{t}}} \right\}.}}}} & (93) \end{matrix}$

Since the rank of (G−{tilde over (G)}) is M_(t), there are M_(t) linearly independent rows in (G−{tilde over (G)}). Suppose that the f_(i)-th, 1≦f₁<f₂< . . . <f_(M)≦kM_(t), rows of (G−{tilde over (G)}) are linearly independent of each other. Then, the matrix $\begin{matrix} {A\overset{\Delta}{=}\begin{bmatrix} a_{f_{1},f_{1}} & a_{f_{1},f_{2}} & \ldots & a_{f_{1},f_{M_{t}}} \\ a_{f_{2},f_{1}} & a_{f_{2},f_{2}} & \ldots & a_{f_{2},f_{M_{t}}} \\ \vdots & \vdots & ⋰ & \vdots \\ a_{f_{M_{t}},f_{1}} & a_{f_{M_{t}},f_{2}} & \ldots & a_{f_{M_{t}},f_{M_{t}}} \end{bmatrix}} & (94) \end{matrix}$ is a submatrix of (G−{tilde over (G)})(G−{tilde over (G)}), and the rank of A is M_(t). Using the notation $\begin{matrix} {Q_{0} = {{diag}\quad\left\{ {W_{f_{1}},W_{f_{2}},\cdots\quad,W_{f_{M_{t}}}} \right\}}} & (95) \end{matrix}$ from (93), it is clear that Q₀{A{circle around (×)}Λ} Q₀ ^(ψ) is a lM_(t)×lM_(t) submatrix of (Δ∘R)_(klM) _(t) _(×klM) _(t) . Therefore, to show that the rank of Δ∘R is at least lM_(t), it is sufficient to show that the submatrix Q₀{A{circle around (×)}Λ}Q₀ ^(H) is of rank lM_(t).

Since the rank of A is M_(t) and the rank of Λ is L, according to a rank equality on tensor products rank(A{circle around (×)}Λ)=rank(A)rank(Λ)=M _(t)L  (96) so the matrix A{circle around (×)}Λ is of full rank. It is known that for any m=1, 2, . . . , kM_(t), the rank of W_(m) is l, so the rank of Q₀ is lM_(t). Therefore, the rank of Q₀{A{circle around (×)}Λ} Q₀ ^(ψ) is lM_(t), which is what was intended to be shown.

The SF code obtained from a space-time block of square size via the mapping F_(l) (1≦l≦L) will achieve a diversity of lM_(t)M_(r) exactly, which follows from the discussion above. Since the maximum achievable diversity is upper bounded by min {LM_(t)M_(r), NM_(r)}, the following fundamental aspect of the invention is revealed: The SF code obtained from a full diversity ST code via the mapping F_(l) defined in (79) achieves the maximum achievable diversity min {LM_(t)M_(r), NM_(r)}.

The symbol rate of the resulting SF codes via the mapping F_(l) is 1/l times that of the corresponding ST codes. However, the SF codes of the present invention achieve full space-frequency diversity. For example, for a system with two transmit antennas, eight subcarriers, and a two-ray delay profile, the symbol rate of the full-diversity SF codes introduced above is ½, whereas the symbol rate in prior art systems is only ¼. In certain practical applications, this effect can be compensated for by expanding the constellation size, maintaining the same spectral efficiency. Furthermore, from a system performance point of view, there is a tradeoff between the diversity order and the coding rate. The present invention offers a flexible choice in the diversity order.

The coding advantage of the resulting SF codes will now be characterized in terms of the coding advantage of the underlying ST codes by defining and evaluating the diversity product for SF codes. The effect of the delay distribution and the power distribution on the performance of the inventive SF codes will also be analyzed.

The diversity product, which is the normalized coding advantage of a full diversity ST code, has been defined for quasistatic flat-fading channels $\begin{matrix} {\zeta_{ST} = {\frac{1}{2\sqrt{M_{t}}}{\min\limits_{G \neq \overset{\sim}{G}}{{\prod\limits_{i = 1}^{M_{t}}\beta_{i}}}^{\frac{1}{2M_{t}}}}}} & (97) \end{matrix}$ where β₁, β₂, . . . , β_(M) are the nonzero eigenvalues of (G−{tilde over (G)})(G−{tilde over (G)})^(H) for any pair of distinct ST codewords G and {tilde over (G)}.

Based on the upper bound on the pair-wise error probability, the diversity product of a full-diversity SF code can be defined as $\begin{matrix} {\zeta_{{SF},R} = {\frac{1}{2\sqrt{M_{t}}}{\min\limits_{C \neq \overset{\sim}{C}}{{\prod\limits_{i = 1}^{{LM}_{t}}\lambda_{i}}}^{\frac{1}{2{LM}_{t}}}}}} & (98) \end{matrix}$ where λ₁, λ₂, λ_(LM) _(t) are the nonzero eigenvalues of Δ∘R for any pair of distinct space-frequency codewords C and {tilde over (C)}. In the following discussion, it is assumed, without loss of generality, that the number of subcarriers N is not less than LM_(t), i.e., LM_(t)≦N.

The diversity product of the full-diversity SF code described above is bounded by that of the corresponding ST codes as follows: √{square root over (η_(L))}Φζ_(ST)≦ζ_(SF,R)≦√{square root over (η_(l))}Φζ_(ST)  (99) where Φ=(Π_(l=0) ^(L−1)δ_(l))^(l/L), and η_(l) and η_(L) are the largest and smallest eigenvalues, respectively, of the matrix H, which is defined as $\begin{matrix} {H = \begin{bmatrix} {H(0)} & {H(1)}^{*} & \ldots & {H\left( {L - 1} \right)}^{*} \\ {H(1)} & {H(0)} & \ldots & {H\left( {L - 2} \right)}^{*} \\ \vdots & \vdots & ⋰ & \vdots \\ {H\left( {L - 1} \right)} & {H\left( {L - 2} \right)} & \ldots & {H(0)} \end{bmatrix}_{L \times L}} & (100) \end{matrix}$ and the entries of H are given by $\begin{matrix} {{{H(n)} = {\sum\limits_{l = 0}^{L - 1}{\mathbb{e}}^{{- {j2\pi}}\quad n\quad\Delta\quad f\quad\tau_{1}}}},{n = 0},1,\ldots\quad,{L - 1.}} & (101) \end{matrix}$

To show that this is so, we use the notation developed above by replacing the repetition factor l as L, since the full diversity is achieved by using the mapping F_(l). For any n×n non-negative definite matrix A, we denote its eigenvalues as eig₁(A)≧eig₂(A)≧ . . . ≧eig_(n)(A).

For two distinct codewords C and {tilde over (C)}, there are two corresponding ST codewords G and {tilde over (G)}, such that the relationship of C−{tilde over (C)} and G−{tilde over (G)} in (80) and (81) holds. The rank of Δ∘R is exactly LM_(t), which means that Δ∘R has totally LM_(t) eigenvalues, which are the same as the nonzero eigenvalues of (Δ∘R)klM_(t)×klM_(t). Thus, $\begin{matrix} \begin{matrix} {\zeta_{{SF},R} = {\frac{1}{2\sqrt{M_{t}}}{\min\limits_{C \neq \overset{\sim}{C}}{{\prod\limits_{l = 1}^{{LM}_{t}}{{eig}_{i}\left( \left( {\Delta \circ R} \right)_{{kLM}_{t} \times {kLM}_{t}} \right)}}}^{\frac{1}{2{LM}_{t}}}}}} \\ {= {\frac{1}{2\sqrt{M_{t}}}{\min\limits_{G \neq \overset{\sim}{G}}{\begin{matrix} {\prod\limits_{l = 1}^{{LM}_{t}}{{eig}_{i}\left( {Q\left\{ \left\lbrack \left( {G - \overset{\sim}{G}} \right) \right. \right.} \right.}} \\ \left. {\left. {\left. \left( {G - \overset{\sim}{G}} \right)^{\Psi} \right\rbrack \otimes \Lambda} \right\} Q^{\Psi}} \right) \end{matrix}}^{\frac{1}{2{LM}_{t}}}}}} \\ {= {\frac{1}{2\sqrt{M_{t}}}{\min\limits_{G \neq \overset{\sim}{G}}{{\prod\limits_{l = 1}^{{LM}_{t}}{\theta_{i}{{eig}_{i}\left( {\left\lbrack {\left( {G - \overset{\sim}{G}} \right)\left( {G - \overset{\sim}{G}} \right)^{\Psi}} \right\rbrack \otimes \Lambda} \right)}}}}^{\frac{1}{2{LM}_{t}}}}}} \end{matrix} & (102) \end{matrix}$ where eig_(kLM) _(t) (QQ^(ψ))≦θ_(i)≦eig₁(QQ^(ψ)) for i=1, 2, . . . LM_(t). In (102), the second equality follows from (93), and the last equality follows by Ostrowski's theorem. Since, Q=diag{W₁, W₂, . . . , W_(kM) _(t) }, then QQ ^(ψ) =diag {W ₁ W ₁ ^(ψ) , W ₂ W ₂ ^(ψ) , W _(km) _(t) W _(kM) _(t) ^(ψ)}. As a requirement of Ostrowski's theorem, the matrix Q should be nonsingular, which is guaranteed by the fact that each matrix W_(m) is of full rank for any m=1, 2, . . . , kM_(t). Furthermore, from (89), it is observed that for any 1≦m≦kM_(t) W _(m) W _(m) ^(ψ) =W ₁ DD ^(ψ) W ₁ ^(ψ) =W ₁ W ₁ ^(ψ) where D=diag {W^((m−1)Lτ) ⁰ , W^((m−1)Lτ) ¹ , . . . , W^((m−1)Lτ) ^(L−1) }. From (90), it is easy to verify that W₁W₁ ^(ψ) is the matrix H defined in (100). Thus, QQ^(ψ)=I_(kM) _(t) {circle around (×)}H. Therefore, it can be concluded that eig_(L)(H)≦θ_(i)≦eig₁(H), for any i=1, 2, . . . , LM_(t).

Since the set of LM_(t) nonzero eigenvalues of [(G−{tilde over (G)})(G−{tilde over (G)})^(ψ)]{circle around (×)}Λ can be expressed as {eig _(i)((G−{tilde over (G)})(G−{tilde over (G)}))·eig _(j)(Λ):1≦i≦M _(t), 1≦j≦L}  (103) substituting (103) into (102), we arrive at $\begin{matrix} \begin{matrix} {\zeta_{{SF},R} = {\frac{1}{2\sqrt{M_{t}}}{\min\limits_{G \neq \overset{\sim}{G}}{\left( {\prod\limits_{i = 1}^{{LM}_{t}}\theta_{i}} \right)^{\frac{1}{2{LM}_{t}}} \times}}}} \\ {{{\prod\limits_{i = 1}^{M_{t}}{{eig}_{i}\left( {\left( {G - \overset{\sim}{G}} \right)\left( {G - \overset{\sim}{G}} \right)^{\Psi}} \right)}}}^{\frac{1}{2M_{t}}}} \\ {\left( {\prod\limits_{j = 1}^{L}{{eig}_{j}(\Lambda)}} \right)^{\frac{1}{2L}}} \\ {= {\left( {\prod\limits_{i = 1}^{{LM}_{t}}\theta_{i}} \right)^{\frac{1}{2{LM}_{t}}}\left( {\prod\limits_{j = 1}^{L}\delta_{j}^{2}} \right)^{\frac{1}{2L}}\zeta_{ST}}} \end{matrix} & (104) \end{matrix}$ Since η_(L)≦θ_(i)≦η_(l) for any i=1, 2, . . . ,LM_(t), the results shown in (99) are proven.

From the above, it is apparent that the larger the coding advantage of the ST code, the larger the coding advantage of the resulting SF code, suggesting that to maximize the performance of the SF codes, the best known ST codes existing in the art should be utilized. Moreover, the coding advantage of the resulting SF code depends on the power delay profile. First, it depends on the power distribution through the square root of the geometric average of the path powers, i.e., Φ=(Π_(l=0) ^(L−1)δ_(l) ²)^(l/L). Since the sum of the powers of the paths is unity, it is apparent that the best performance is expected from the uniform power distribution case, i.e. δ_(l) ²=l/L. Secondly, the entries of the matrix H defined in (100) are functions of path delays, and therefore the coding advantage also depends on the delay distribution of the paths. For example, in case of a two-ray delay profile, (i.e., L=2), the matrix H has two eigenvalues: $\eta_{1} = {2 + {2{{\cos\quad\frac{\pi\left( {\tau_{1} - \tau_{0}} \right)}{T}}}}}$ $\eta_{2} = {2 - {2{{{\cos\quad\frac{\pi\left( {\tau_{1} - \tau_{0}} \right)}{T}}}.}}}$ Typically, the ration of (τ_(l)−τ₀)/T is less than ½ and therefore cos π(τ_(l)−τ₀)/T is non-negative. Thus, the smaller the separation of the two rays, the smaller the eigenvalues η₂. If the two rays are very close compared with the duration T of one OFDM symbol, the lower bound in (99) approaches zero.

In an illustrative example, the signal coding through mapping of the present was implemented via SF codes from ST block code and ST trellis codes. The SF block codes were obtained form orthogonal ST block codes for two and four transmit antennas. For the case of two transmit antennas, 2×2 orthogonal ST block codes according to the known Alamouti's structure was used, which is given by $\begin{matrix} {G_{2} = {\begin{bmatrix} x_{1} & x_{2} \\ {- x_{2}^{*}} & x_{1}^{*} \end{bmatrix}.}} & (105) \end{matrix}$ The SF block code for four transmit antennas was obtained from the 4×4 orthogonal design $\begin{matrix} {G_{4} = {\begin{bmatrix} x_{1} & x_{2} & x_{3} & 0 \\ {- x_{2}^{*}} & x_{1}^{*} & 0 & x_{3} \\ {- x_{3}^{*}} & 0 & x_{1}^{*} & {- x_{2}} \\ 0 & {- x_{3}^{*}} & x_{2}^{*} & x_{1} \end{bmatrix}.}} & (106) \end{matrix}$

In both cases, the entries x_(i) were taken from BPSK or QPSK constellations. Note that the 2×2 orthogonal design could carry one channel symbol per subcarrier, while the 4×4 block code had a symbol rate of only ¾. For SF trellis codes, the two-antenna, four-state, QPSK space-time code, and the three-antenna, 16-state, QPSK space-time code were utilized.

The SF block codes and trellis were implemented with different power delay profiles: a two-ray equal power delay profile and COST207 typical urban (TU) six-ray power delay profile. The subcarrier path gains were generated according to the system model characterized by (12), independently for different transmit and receive antennas. The Figures illustrate the results in the form of bit-error rate (BER) curves as a function of the average SNR per bit, where the inventive full-diversity SF block codes are compared with the SF codes using ST codes directly at the same spectral density.

In a first example of the present invention, a simple two-ray, equal power delay profile of τμs between the two rays is assumed. Two cases were implemented: i) τ=5 μs and ii) τ=20 μs. In the illustrative example, the communication system had N=128 subcarriers, and the total bandwidth was BW=1 MHz. Thus, the OFDM block duration was T=128 μs without the cyclic prefix. The length of the cyclic prefix was set to 20 Us in all cases. The MIMO-OFDM systems had one receive antenna. In all of the illustrative curves, the dashed lines correspond to the τ=5 μS case and the solid lines correspond to the 20 μs case. The curves with squares show the performance of the full-diversity SF codes obtained by repeating each row of the ST codes two times. The curves with the circles show the results for the case of using ST codes directly as SF codes (i.e., no repetition).

FIG. 9A depicts the performance of the SF block codes obtained from the two-antenna orthogonal design. BPSK modulation was used for the non-repeated case and QPSK for the repeated case. Therefore, both systems had a spectral efficiency of ((128×1b)/((128 μs+20 μs)×1 MHz))=0.86 b/s/Hz. The Figure shows that in the case of τ=20 μs, the performance curve of the mapped full-diversity SF code has a steeper slope than that of the unmapped code. A performance improvement of approximately 4 dB at a BER of 10⁻⁴ can be observed in the Figure. The performance of the full-diversity SF code degraded significantly from the τ=20 μs to the τ=5 μs case, whereas the performance of the SF code implemented as an unmapped ST code was almost the same for both delay profiles. This observation is consistent with the previous discussion regarding the coding advantage being dependent on the delay distribution of the multiple paths. It is also in agreement with results described in the literature that using ST codes directly as SF codes can exploit only the spatial diversity.

FIG. 9B shows the performance of the SF block codes obtained from the orthogonal ST code for four transmit antennas. The mapped full-diversity SF code used QPSK modulation, and the non-repeated code used BPSK modulation. Thus, the spectral efficiency of both codes was ((128×3/4b)/((128 μs+20 μs)×1 MHz))=0.65 b/s/Hz. The tendencies observed in FIG. 9B are similar to those observed in FIG. 9A. In the case of τ=5 μs, the performance of the inventive mapped SF code is slightly less than that of the SF code using ST code without repetition. The diminished performance is due to the smaller coding advantage of the proposed SF code since, in order to keep the same spectral efficiency for the two schemes for purposes of comparison, QPSK modulation was used for the inventive SF code and BPSK modulation was used for the non-repeated code.

The performance of the SF trellis codes for two and three transmit antennas are depicted in FIG. 10A and FIG. 10B, respectively. It can be observed that the full-diversity SF trellis codes of the present invention have better diversity order than the non-repeated codes for the case of the longer delay profile (i.e., τ=20 μs). At a BER of 10⁻³, there is an improvement of about 2 dB for the two-antenna case and an improvement of about 1 dB for the three-antenna case. The modulation scheme was QPSK for all trellis codes; therefore, the non-repeated codes achieved a spectral efficiency of 1.73 b/s/Hz, whereas the repeated codes had a spectral efficiency of 0.86 b/s/Hz. Note that FIGS. 10A and 10B demonstrate that the proposed SF code construction method can be used to produce a set of codes that have different rates and error correction capabilities, offering different tradeoffs between code rate and diversity order.

Certain observations can be made from the illustrative examples. It is apparent that by repeating each row of the space-time code matrix, codes may be constructed whose error performance curve is steeper than that of the codes without repetition, i.e., the obtained codes have higher diversity order. However, the actual performance of the code depends heavily on the underlying channel model. In all cases, both the absolute performance and the performance improvement obtained by repetition are considerably better in case of the longer delay profile (i.e., τ=20 μs), and the performance of the obtained full-diversity SF codes degrade significantly in case of the delay profile with τ=5 μs. These phenomena can be explained as follows.

The delay distribution of the channel has a significant effect on the SF code performance. If the delays of the paths are large with respect to one OFDM block period, there will be fast variations in the spectrum of the channel impulse response; therefore, the probability of simultaneous deep fades in adjacent sub-channels will be smaller. This observation is in accordance with previous discussions, it should be expected that better BER performance occurs when transmitting data over channels with larger path delays. On the other hand, if the two delay paths are very close, the channel may cause performance degradation.

A second implementation was performed using a more realistic channel model. The SF codes simulated in the previous subsection were tested over the COST207 Typical Urban (TU) six-ray channel model. The power delay profile of the channel is shown in FIG. 11A. A MIMO-OFDM system was implemented having N=128 subcarriers with two different bandwidths: i) BW=1 MHz (denoted by dashed lines), and ii) BW=4 MHz (denoted by solid lines). The cyclic prefix was set at 20 μs for both cases. In all of the simulations, the curves with squares show the performance of the SF codes obtained by repeating each row of the corresponding space-time codes two times, and the curves with circles show the results for the case of using ST codes as SF codes (without repetition).

The performance of the SF block codes from the 2×2 orthogonal design with and without repetition are shown in FIG. 11B for two transmit and one receive antennas. The repeated code (using QPSK modulation) and the non-repeated code (using BPSK modulation) had the same spectral efficiency of 0.86 b/s/Hz for the 1-MHz system and 0.22 b/s/Hz for the 4-MHz system, respectively. It can be observed from the figure that in the case of BW=4 MHz, the code with repetition has a steeper performance curve than the code without repetition. There is a performance improvement of about 2 dB at a BER of 10⁻⁴. In case of BW=1 MHz, the maximum delay of the TU profile (5.0 μs) is “short” compared to the “long” duration of the OFDM block (128 μs), which means that there is little frequency diversity available in the fading channel. From the Figure, it is apparent that the performance of the repeated code is worse than the non-repeated code, due to the smaller coding advantage, which is a result of the larger constellation size.

The performance of the inventive full-rate full-diversity SF codes was also compared with that of full-diversity SF codes, such as the mapped SF codes described herein. The full-rate code (74) was implemented with symbols s₁, s₂, s₃, s₄ chosen from a QPSK constellation. The symbol rate of the code is 1, and the spectral efficiency is 2 bits/s/Hz, ignoring the cyclic prefix. The full-diversity SF code for comparison is a repetition of the Alamouti scheme two times as follows: $\begin{matrix} {{G = \begin{bmatrix} x_{1} & x_{2} \\ x_{1} & x_{2} \\ {- x_{2}^{*}} & x_{1}^{*} \\ {- x_{2}^{*}} & x_{1}^{*} \end{bmatrix}},} & (107) \end{matrix}$ where the channel symbols x₁ and x₂ were chosen from 16-QAM in order to maintain the same spectral efficiency. In FIGS. 14A-16B, the curves with diamonds and circles show the performance of the SF code from orthogonal design (107) without permutation and with the random permutation (76), respectively.

First, a 2-ray, equal-power profile, with a) τ=5 μs, and b) τ=20 μs was implemented. The total bandwidth was BW=1 MHz. From the BER curve of the τ=5 μs case, depicted in FIG. 14A, it can be observed that without permutation, the inventive full-rate SF code outperforms the SF code from orthogonal design by about 3 dB at a BER of 10⁻⁴. With the random permutation (76), the inventive full-rate code outperforms the code from orthogonal design by about 2 dB at a BER of 10⁻⁴. With the optimum permutation (μ_(op)=64), the inventive code has an additional gain of 3 dB at a BER of 10⁻⁴. Compared to the code from orthogonal design with the random permutation, the inventive full-rate code with the optimum permutation has a total gain of 5 dB at a BER of 10⁻⁴. FIG. 14B shows the performance of the SF codes in the τ=20 μs. It can be seen that without permutation, the inventive full-rate code outperforms the code (107) by about 2 dB at a BER of 10⁻⁴. With the random permutation (76), the performance of the inventive code is better than that of the code (107) by about 2 dB at a BER of 10⁻⁴. With the optimum permutation (μ_(op)=161 an additional improvement of 2 dB at a BER of 10⁻⁴ is achieved by the inventive full-rate-full-diversity code.

The two SF codes were also implemented using the TU and HT channel models. Two situation were considered: a) BW=1 MHz, and b) BW=4 MHz. FIG. 15A-15B depicts the performance curves for the TU channel model. In the of BW=1 MHz case, from FIG. 15A, it can be observed that without permutation, the full-rate SF code outperforms the SF code (107) by about 2 dB at a BER of 10⁻⁴. With the random permutation (76), the performance of the inventive full-rate code is better than that of the code from orthogonal design by about 2.5 dB at a BER of 10⁻⁴. With the inventive permutation (μ_(op)=64), an additional improvement of 1 dB at a BER of 10⁻⁴ is achieved by the inventive full-rate full-diversity SF code. In the BW=4 MHz case, from FIG. 15B, it is observed that without permutation, the performance of the inventive code is better than that of the code from orthogonal design by about 3 dB at a BER of 10⁻⁴. With the random permutation, the inventive SF code outperforms the SF code (107) by about 2 dB at a BER of 10⁻⁴. With the inventive permutation (μ_(op)=64), there is an additional gain of about 1 dB at a BER of 10⁻⁴. Compared to the SF code from orthogonal design with the random permutation, the proposed SF code with the permutation of the present invention has a total gain of 3 dB at a BER of 10⁻⁴.

FIGS. 16A-16B provide the performance curves for the HT channel model. In case of BW=1 MHz, from FIG. 16A, it is observed that without permutation, the full-rate SF code of the present invention outperforms the SF code (107) by about 3 dB at a BER of 10⁴. With the random permutation (76), the performance of the proposed code is better than that of the code (107) by about 2 dB at a BER of 10⁻⁴. With the inventive permutation (μ_(op)=64), an additional improvement of more than 1 dB is observed for the proposed SF code at a BER of 10⁻⁴. In the BW=4 MHz case, FIG. 16B shows that without permutation, the performance of the inventive full-rate code is better than that of the code (107) by about 1.5 dB at a BER of 10⁻⁴. With the random permutation, the inventive SF code outperforms the SF code from orthogonal design by about 2 dB at a BER of 10⁴. Compared to the SF code from orthogonal design with the random permutation, the SF code of the present invention with the optimum permutation has a total gain of 3 dB at a BER of 10^(−4.)

The codes described above have among their beneficial features full space-frequency diversity, which is a clear improvement over the prior art. The concepts of the invention described above may be extended to achieve maximum diversity in all three of space, frequency and time, as is described below.

6. Space-Time-Frequency (STF) Codes

In the description of the channel model above, it was shown in (21) that ${{P\left( {C->\overset{\sim}{C}} \right)} \leq {\begin{pmatrix} {{2{vM}_{r}} - 1} \\ {vM}_{r} \end{pmatrix}\left( {\prod\limits_{i = 1}^{v}\lambda_{i}} \right)^{- M_{r}}\left( \frac{\rho}{M_{t}} \right)^{- {vM}_{r}}}},$ where ν is the rank of Δ∘R, and λ₁, λ₂, . . . , λ_(ν) are the non-zero eigenvalues of Δ∘R. The minimum value of the product Π_(i=l) ^(ν)λ_(i) over all pairs of distinct signals C and {tilde over (C)} is termed as coding advantage, denoted by $\begin{matrix} {\zeta_{STF} = {\min\limits_{C \neq \overset{\sim}{C}}{\prod\limits_{i = 1}^{v}{\lambda_{i}.}}}} & (108) \end{matrix}$ If the minimum rank of Δ∘R is ν for any pair of distinct STF codewords C and {tilde over (C)}, it is said that the STF code achieves a diversity order of νM_(r). For a fixed number of OFDM blocks K, number of transmit antennas M_(t) and correlation matrices R_(T) and R_(F), the maximum achievable diversity or full diversity is defined as the maximum diversity order that can be achieved by STF codes of size KN×M_(r).

According to the rank inequalities on Hadamard products and tensor products, rank(Δ∘R)≦rank(Δ)rank (R _(T))rank(R _(F)). Since the rank of Δ is at most M_(t) and the rank of R_(F) is at most L, then rank(Δ∘R)≦min{LM _(t)rank(R _(T)),KN}.

Thus, the maximum achievable diversity is at most min {LM_(t)M_(r)rank (R_(T))×KNM_(r)}. Previous work has not discussed whether this upper bound can be achieved or not. However, through the present invention, this upper bound can indeed be achieved. It can also be observed that if the channel stays constant over multiple OFDM blocks (rank (R_(T))=1), the maximum achievable diversity is only min {LM_(t)M_(r),KNM_(t)}. In this case, STF coding cannot provide additional diversity advantage compared to the SF coding approach described above.

Note that the proposed analytical framework includes ST and SF codes as special cases. If only one sub-carrier (N=1) is considered, and one delay path (L=1), the channel becomes a single-carrier, time-correlated, flat fading MIMO channel. The correlation matrix R simplifies to R=R_(T), and the code design problem reduces to that of ST code design. In the case of coding over a single OFDM block (K=1), the correlation matrix R becomes R=R_(F), and the code design problem simplifies to that of SF codes, such as those described above involving mapping.

Two exemplary STF code design methods to achieve the maximum achievable diversity order min {LM_(t)M_(r)rank(R_(T)),KNM_(r)} will now be described. Without loss of generality, it is assumed that the number of sub-carriers, N, is not less than LM_(t) so the maximum achievable diversity order is LM_(t)M_(r)rank(R_(T)).

Suppose that C_(SF) is a full-diversity SF code of size N×M_(t), such as the SF codes described above. A full-diversity STF code, C_(STF), may be constructed by repeating C_(SF) K times over K OFDM blocks as follows: C _(STF)=1_(k×1) {circle around (×)}C _(SF),  (109) where 1_(k×l) is an all one matrix of size k×1. Let Δ_(STF)=(C _(STF) −{tilde over (C)} _(STF))(C _(STF) −{tilde over (C)} _(STF))^(ψ) and Δ_(SF)=(C _(SF) −{tilde over (C)} _(SF))(C _(SF) −{tilde over (C)} _(SF))^(ψ) Then, Δ_(STF)=[1_(k×l){circle around (×)}(C _(SF) −{tilde over (C)} _(SF))][1_(l×k){circle around (×)}(C _(SF) −{tilde over (C)} _(SF))]1_(k×k){circle around (×)}Δ_(SF). Thus, $\begin{matrix} {{\Delta_{STF} \circ R} = {\left( {1_{k \times k} \otimes \Delta_{SF}} \right) \circ \left( {R_{T} \otimes R_{F}} \right)}} \\ {= {R_{T} \otimes {\left( {\Delta_{SF} \circ R_{F}} \right).}}} \end{matrix}$ Since the SF code C_(SF) achieves full diversity in each OFDM block, the rank of Δ_(SF)∘R_(F) is LM_(t). Therefore, the rank of Δ_(STF) ∘R is LM_(t) rank(R_(T)), so C_(STF) in (109) is guaranteed to achieve a diversity order of LM_(t)M_(T)rank(R_(T)).

It is to be noted that the maximum achievable diversity depends on the rank of the temporal correlation matrix R_(T). If the fading channels are constant during K OFDM blocks, i.e., rank(R_(T))=1, the maximum achievable diversity order for STF codes (coding across several OFDM blocks) is the same as that for SF codes (coding within one OFDM block). Moreover, if the channel changes independently in time, i.e. R_(T)=I_(K), the repetition structure of STF code C_(STF) in (109) is sufficient, but not necessary to achieve the full diversity. In this case, Δ∘R=diag(Δ₁ ∘R _(F), Δ₂ ∘R _(F), . . . , Δ_(K) ∘R _(F)), where Δ_(k)=(C_(k)−{tilde over (C)}_(k))(C_(k)−{tilde over (C)}_(k))^(ψ) for 1≦k≦K. Thus, in this case, the necessary and sufficient condition to achieve full diversity KLM_(t)M_(T) is that each matrix Δ_(k)∘R_(F) be of rank LM_(t) over all pairs of distinct codewords simultaneously for all 1≦k≦K.

The repetition-coded STF code design of the present invention ensures full diversity at the price of symbol rate decrease by a factor of 1/K OFDM blocks compared to the symbol rate of the underlying SF code. The advantage of this approach is that any full-diversity SF code (block or trellis) can be used to design full-diversity STF codes.

In another aspect of the invention, a class of STF codes that can achieve a diversity order of ΓM_(t)M_(T)rank(R_(T)) for any fixed integer Γ(1≦Γ≦L) by extending the full-rate full-diversity SF code construction method proposed for one OFDM block (K=1 case).

Consider a STF code structure consisting of STF codewords C of size KN×M_(t): C=[C ₁ ^(T) C ₂ ^(T) . . . C _(K) ^(T)]^(T)  (110) where C _(k) =[G _(k,1) ^(T) G _(k,2) ^(T) . . . G _(k,P) ^(T) 0_(N−PΓM) _(t) ^(T)]^(T)  (111) for k=1, 2, . . . , K. In (111), P=└N/(ΓM_(t))┘, and each matrix G_(k,p)(1≦k≦K,1≦p≦P) is of size ΓM_(t)×M_(t). The zero padding in (111) is used if the number of subcarriers N is not an integer multiple of ΓM_(t). For each p(1≦p≦P), the code matrices G_(1,p), G_(2,p), . . . , G_(K,p) are designed jointly, but the design of G_(1,p), G_(2,p), . . . G_(K,p) is independent for different p values. For a fixed p(1≦p≦P), let G _(k,p) =√{square root over (M _(t) )} diag(X _(k,1) X _(k,2) X _(k,M) _(t) ), k=1, 2, . . . , K  (112) where diag(X_(k,1), X_(k,2), . . . X_(k,M) _(t) ) is a block diagonal matrix, X_(k,l)=[x_(k,(i−1)Γ+1) X_(k,(i−1)Γ+)2 . . . x_(k,iΓ)]^(T), i=1, 2 . . . M_(t), and all x_(k,j), j=1, 2, . . . ΓM_(t) are complex symbols and will be described in paragraphs that follow. The energy normalization condition is ${E\left( {\sum\limits_{k = 1}^{K}{\sum\limits_{j = 1}^{\Gamma\quad M_{t}}{x_{k,j}}^{2}}} \right)} = {K\quad\Gamma\quad{M_{t}.}}$ The symbol rate of the proposed scheme is PΓM_(t)/N, ignoring the cyclic prefix. If N is a multiple of ΓM_(t), the symbol rate is 1. If not, the rate is less than 1, but since N is typically much greater than ΓM_(t), the symbol rate is very close to 1. Full rate is defined as one channel symbol per subcarrier per OFDM block period, so the inventive method can either achieve full symbol rate, or it can perform very close to it. Note that this scheme includes the code design method described above as a special case when K=1.

A sufficient condition will now be shown for the STF codes described above to achieve a diversity order of ΓM_(t)M_(r)rank(R_(T)). For simplicity, we use the notation X=[x_(l,1) . . . x_(l,ΓM) _(t) . . . x_(K,1) . . . x_(K,ΓM) _(t) ] and {tilde over (X)}=[{tilde over (x)}_(l,1) . . . {tilde over (x)}_(l,ΓM) _(t) . . . {tilde over (x)}_(K,1) . . . x_(K,ΓM) _(t)]. Moreover, for any n×n non-negative definite matrix A, its eigenvalues will be denoted in a non-increasing order as: eig₁(A)≧eig₂(A)≧ . . . ≧eig_(n)(A). Then, for any STF code constructed by (110)-(112), Π_(k=1) ^(K)Π_(j=1) ^(ΓM) ^(t) |x_(k,j)−{tilde over (x)}_(k,j)|≠0 for any pair of distinct symbols X and {tilde over (X)}, the STF code achieves a diversity order of ΓM_(t)M_(T)rank(R_(T)), and the coding advantage is bounded by (M _(t)δ_(min))^(ΓM) ^(t) ^(rank(R) ^(T) ⁾Φ≦ζ_(STF)≦(M_(t)δ_(max))^(ΓM) ^(t) ^(rank(R) ^(T) ⁾Φ,  (113) where $\begin{matrix} {{\delta_{\min} = {\min\limits_{X \neq \overset{\sim}{X}}{\min\limits_{{1 \leq k \leq K},{1 \leq j \leq {\Gamma\quad M_{t}}}}{{x_{k,j} - {\overset{\sim}{x}}_{k,j}}}^{2}}}},} & (114) \\ {{\delta_{\max} = {\max\limits_{X \neq \overset{\sim}{X}}{\max\limits_{{1 \leq k \leq K},{1 \leq j \leq {\Gamma\quad M_{t}}}}{{x_{k,j} - {\overset{\sim}{x}}_{k,j}}}^{2}}}},} & (115) \\ {{\Phi = {{{\det\left( Q_{0} \right)}}^{M_{t}{{rank}{(R_{T})}}}{\prod\limits_{i = 1}^{{rank}{(R_{T})}}\left( {{eig}_{1}\left( R_{T} \right)} \right)^{\Gamma\quad M_{t}}}}},{and}} & (116) \\ {{Q_{0} = {W_{0}{{diag}\left( {\delta_{0}^{2},\delta_{1}^{2},\ldots\quad,\delta_{L - 1}^{2}} \right)}W_{0}^{\Psi}}},} & (117) \\ {W_{0} = \begin{bmatrix} 1 & 1 & \ldots & 1 \\ \omega^{\tau_{0}} & \omega^{\tau_{1}} & \ldots & \omega^{\tau_{L - 1}} \\ \vdots & \vdots & ⋰ & \vdots \\ \omega^{{({\Gamma - 1})}\tau_{0}} & \omega^{{({\Gamma - 1})}\tau_{1}} & \ldots & \omega^{{({\Gamma - 1})}\tau_{L - 1}} \end{bmatrix}_{\Gamma \times L}} & (118) \end{matrix}$ Furthermore, if the temporal correlation matrix R_(T) is of full rank, i.e., rank (R_(T))=K, the coding advantage is ζ_(STF) =δM _(t) ^(KΓM) ^(t) |det(R _(t))|^(TM) ^(t) |det(Q ₀)|^(KM) ^(t) ,  (119) where $\begin{matrix} {\delta = {\min\limits_{X \neq \overset{\sim}{X}}{\prod\limits_{k = 1}^{K}{\prod\limits_{j = 1}^{\Gamma\quad M_{t}}{{{x_{k,j} - {\overset{\sim}{x}}_{k,j}}}^{2}.}}}}} & (120) \end{matrix}$

From the above, it should be observed that with the code structure specified in (110)-(112), it is not difficult to achieve the diversity order of ΓM_(t)M_(T)rank(R_(T)). The remaining problem is to design a set of complex symbol vectors, X=[x_(1,1) . . . x_(l,ΓM) t . . . x_(K,1) . . . X_(K,Γ,M) _(t)], such that the coding advantage ζ_(STF) is as large as possible. One approach is to maximize δ_(min) and δ_(max) in (113) according to the lower and upper bounds of the coding advantage. Another approach is to maximize δ in (120). The latter case will be illustrated and offers advantages over the former approach. First, the coding advantage ζ_(STF) in (119) is determined by δ in closed form, although this closed form only holds with the assumption that the temporal correlation matrix R_(T) is of full rank. Second, the problem of designing X to maximize δ is related to the problem of constructing signal constellations for Rayleigh fading channels, which has been well solved in the prior art. In the literature, δis called the minimum product distance of the set of symbols X.

To implement X in order to maximize the minimum product distance δ, denote L=KTM_(t) and assume that Ω is a constellation such as QAM, PAM, and so on. The set of complex symbol vectors is obtained by applying a transform over a L-dimensional signal set Ω^(L). Specifically, $\begin{matrix} {{X = {{S \cdot \frac{1}{\sqrt{L}}}{V\left( {\theta_{1},\theta_{2},\ldots\quad,\theta_{L}} \right)}}},} & (121) \end{matrix}$ where S=[s₁ s₂ . . . s_(L)]εΩ^(K) is a vector of arbitrary channel symbols to be transmitted, and V(θ₁, θ₂, . . . , θ_(L)) is a Vandermonde matrix with variables θ₁, θ₂, θ_(L): $\begin{matrix} {{V\left( {\theta_{1},\theta_{2},\ldots\quad,\theta_{L}} \right)} = \begin{bmatrix} 1 & 1 & \ldots & 1 \\ \theta_{1} & \theta_{2} & \ldots & \theta_{L} \\ \vdots & \vdots & ⋰ & \vdots \\ \theta_{1}^{L - 1} & \theta_{2}^{L - 1} & \ldots & \theta_{L}^{L - 1} \end{bmatrix}} & (122) \end{matrix}$ The optimum θ_(1,),1≦l≦L, have been specified for different L and Ω. For example, if Ω is a QAM constellation, and L=2^(s)(S≧1), the optimum θ₁'s are given by $\begin{matrix} {{\theta_{l} = {\mathbb{e}}^{j\quad\frac{{4l} - 3}{2L}}},{l = 1},2,\ldots\quad,L} & (123) \end{matrix}$ In case of L=2^(s)·3^(t)(s≧1,t≧1), a class of θ₁'s are given as $\begin{matrix} {{\theta_{l} = {\mathbb{e}}^{j\frac{{6l} - 5}{3L}\pi}},{l = 1},2,\ldots\quad,L} & (124) \end{matrix}$

These relationships are known in the field of coding through various signal constellations. The STF code design discussed in this subsection achieves full symbol rate, which is much larger than that of the repetition coding approach. However, the maximum-likelihood decoding complexity of this approach is high. Its complexity increases exponentially with the number of OFDM blocks, K, while the decoding complexity of the repetition-coded STF codes increases only linearly with K. Fortunately, known sphere decoding methods can be used to reduce the complexity.

The inventive STF code design methods have been implemented for different fading channel models, and their performance compared. The OFDM modulation had N=128 sub-carriers, and the total bandwidth was 1 MHz. Thus, the OFDM block duration was 128 μs for all cases. As in previous examples, the average bit error rate (BER) curves are illustrated as functions of the average signal-to-noise radio (SNR).

Both a block code and a trellis code were implemented in the illustrative example. The simulated communication system had M_(T)=1 receive antenna as well as a two-ray, equal power delay profile (L=2), with a delay of 20 μs between the two rays. Each ray was modeled as a zero mean complex Gaussian random variable with variance 0.5.

The full-diversity STF block codes were obtained by repeating a full-diversity SF block code via (109) across K=1, 2, 3, 4 OFDM blocks. The full-diversity SF block code for M_(t)=2 transmit antennas was constructed from the Alamouti scheme with QPSK modulation via mapping described above. The spectral efficiency of the resulting STF code is 1, 0.5, 0.33, 0.25 bit/s/Hz (omitting the cyclic prefix) for K=1, 2, 3, 4, respectively. The full-diversity STF block code was simulated without temporal correlation (R_(T) was an identity matrix). From FIG. 12A, it is observed that by repeating the SF code over multiple OFDM blocks, the achieved diversity order can be increased.

The simulated full-diversity STF trellis code was obtained from a full-diversity SF trellis code via (109) with K=1, 2, 3, 4, respectively. The used full-diversity SF trellis code for M_(t)=3 transmit antennas was constructed by applying the repetition mapping above to the prior art 16-state, QPSK ST trellis code. Since the modulation was the same in all four cases, the spectral efficiency of the resulting STF codes were 1, 0.5, 0.33, 0.25 bit/s/Hz (omitting the cyclic prefix) for K=1, 2, 3, 4, respectively. Similarly to the previous case, it was assumed that the channel changes independently from OFDM block to OFDM block. The obtained BER curves can be observed in FIG. 12B. As is apparent from the Figure, the STF codes (K>1) achieved higher diversity order than the SF code (K=1).

In a second illustrative demonstration, we used a more realistic Typical Urban (TU) channel model, which is shown in FIG. 11A, and simulated the fading channel with different temporal correlations. It was assumed that the fading channel is constant within each OFDM block period, but varies from one OFDM block period to another according to a first order Markovian model α_(i,j) ^(k)(l)=εα_(i,j) ^(k−1)(l)+η_(i,j) ^(k)(l),0≦1≦L−1 (125) where the constant ε(0≦ε≦1) determines the amount the temporal correlation, and η_(i,j) ^(k)(l) is a zero-mean, complex Gaussian random variable with variance δ_(l)√{square root over (1−ε²)}. If ε=0, there is no temporal correlation (independent fading), while if ε=1, the channel stays constant over multiple OFDM blocks. We considered three temporal correlation scenarios: ε=0,ε=0.8 and ε=0.95.

The simulated full-rate STF codes were constructed by (110)-(112) for M_(t)=2 transmit antennas with Γ=2. The set of complex symbol vectors X were obtained via (121) by applying Vandermonde transforms over a signal set Ω^(4K) for K=1, 2, 3, 4. The Vandermonde transforms were determined for different K values according to (123) and (124). The constellation Ω was chosen to be BPSK. Thus, the spectral efficiency the resulting STF codes were 1 bit/s/Hz (omitting the cyclic prefix), which is independent of the number of jointly encoded OFDM blocks, K.

The performances of the full-rate STF codes are depicted in FIGS. 13A-13C for the three different temporal correlation scenarios. From the Figures, it can be observed that the diversity code of the STF code increases with the number of jointly encoded OFDM blocks, K. However, the improvement of the diversity order depends on the temporal correlation. The performance gain obtained by coding across multiple OFDM blocks decreases as the correlation factor ε increases. For example, without temporal correlation (ε=0), the STF code with K=4 achieves an average BER of about 6.0×10⁻⁸ at a SNR of 16 dB. In case of the correlated channel model and ε=0.8, the STF code with K=4 has an average BER of only 3.0×10⁻⁶ at a SNR of 16 dB. Finally, in case of the correlated channel model and ε=0.95, the STF code with K=4 has an average BER of around 10⁻⁴ at a SNR of 16 dB.

Referring to FIG. 17, there is shown in a flow diagram form fundamental method steps of certain embodiments of the present invention. As is shown in the Figure, the method is entered at start block 1810, where flow is transferred to block 1815, wherein a data bitstream is received. At block 1820, symbols are formed in accordance with said bitstream. The symbols may be selected from, for example, a constellation. Flow is transferred then to block 1825, where a first codeword is formed from the symbols. The first codeword may take the form of a set of constellation symbols, for example, or may be a codeword from another encoding process, such as an ST or SF encoder. Once the first codeword has been formed, flow is passed to block 1830, where a transform is applied to the first codeword to produce a second codeword. The transform may be a function performed on the symbols of the first codeword, for example, phasor rotation, or may be a rearranging of elements of the first codeword, for example, the rows or blocks thereof, into the second codeword.

Once the second codeword has been formed, certain embodiments of the invention will ascertain whether channel characteristic information is available to the transmitter, as indicated at decision block 1835. If the decision is in the affirmative, certain embodiments of the invention will perform permutations on the second codeword, such as those permutations described above, as indicated at block 1840. If the channel information is not available, the permutations are not performed and flow is transferred immediately to block 1850. The second codeword, either permuted or not, is then transmitted in accordance with the invention, as indicated at block 1850. The method then exits at block 1850.

The descriptions above are intended to illustrate possible implementations of the present invention and are not restrictive. Many variations, modifications and alternatives will become apparent to the skilled artisan upon review of this disclosure. For example, components equivalent to those shown and described may be substituted therefor, elements and methods individually described may be combined, and elements described as discrete may be distributed across many components. The scope of the invention should therefore be determined with reference to the appended claims, along with their full range of equivalents. 

1. A method for conveying an encoded data stream in a wireless communication system, the method comprising the steps of: providing a data stream; providing a transmitter having a plurality of transmit antennas, said transmitter including means for simultaneously transmitting via each of said transmit antennas a corresponding symbol over a corresponding one of a plurality of frequencies; providing a receiver having a plurality of receive antennas, said receiver including means for recovering the data stream from the symbols transmitted over said plurality of frequencies, where a region of space between each of said plurality of transmit antennas and each of said plurality of receive antennas defines a transmission channel; forming a first codeword from symbols corresponding to data in the data stream; applying a transform to said first codeword to produce a second codeword, said second codeword including a plurality of column vectors equal in number to said number of transmit antennas and including a plurality of rows equal in number to an integer multiple of said plurality of frequencies; transmitting said second codeword such that symbols thereof in each said column vector are transmitted via a corresponding one of said plurality of transmit antennas and symbols thereof in each said row are transmitted over a corresponding one of said plurality of frequencies; and receiving at said receiver said second codewords via said plurality of receive antennas and said plurality of frequencies and recovering the data stream therefrom.
 2. The method for conveying an encoded data stream as recited in claim 1, where said transform applying step includes the step of applying said transform such that said symbols of said second codeword belong to a set of symbols in which a minimum product distance between symbols thereof is maximized.
 3. The method for conveying an encoded data stream as recited in claim 2 including the steps of: performing the following steps in said first codeword forming step: selecting a symbol vector size; forming a symbol vector of said symbols corresponding to said data stream, said symbol vector corresponding in size to said symbol vector size, each of said symbols characterized by a phasor in a complex plane; and forming said first codeword from a set of said symbol vectors; and performing the following steps in said transform applying step: rotating through an angle in said complex plane each symbol in each of said plurality of symbol vectors of said first codeword; and forming said second codeword from a plurality of said rotated first codewords, each of said column vectors of said second codeword including in adjacent rows thereof all of said rotated symbols from at least one of said symbol vectors.
 4. The method for conveying an encoded data stream as recited in claim 3, where said first codeword forming step includes the step of selecting said first codeword from a signal constellation in accordance with said data of said data stream.
 5. The method for conveying an encoded data stream as recited in claim 4, where said symbol rotating step includes the step of dividing a unit circle into a plurality of discrete angles and rotating said each symbol to one of said discrete angles in accordance with a position of said symbol in said symbol vector.
 6. The method for conveying an encoded data stream as recited in claim 5, where said unit circle dividing step includes the step of dividing said unit circle in said plurality of discrete angles, said plurality of angles being in number proportional to said symbol vector size multiplied by said number of transmit antennas.
 7. The method for conveying an encoded data stream as recited in claim 3, further including the steps of: providing to said transmitter transmission characteristics of said each transmission channel; determining a frequency separation factor corresponding to said channel characteristics; and permuting rows of said second codeword such that said rotated symbols in said adjacent rows are separated by a plurality of rows corresponding in number to a separation in frequency substantially equal to said frequency separation factor.
 8. The method for conveying an encoded data stream as recited in claim 7, where said channel characteristics providing step includes the step of providing symbol delay time and a corresponding power scaling factor for each of said channels as said transmission characteristics.
 9. The method for conveying an encoded data stream as recited in claim 1 including the steps of: forming as said first codeword a space-time encoded codeword corresponding to said data stream in said first codeword forming step, said symbols of said space-time encoded first codeword equal in number to said plurality of transmit antennas; and repeating rows of said first codeword as said rows of said second codeword in said transform applying step.
 10. The method for conveying an encoded data stream as recited in claim 2 including the steps of: selecting an integer-valued temporal correlation factor; performing the following steps in said first codeword forming step: selecting a symbol vector size; forming a symbol vector of said symbols corresponding to said data stream, said symbol vector corresponding in size to said symbol vector size, each of said symbols characterized by a phasor in a complex plane; and forming said first codeword from a set of said symbol vectors; and performing the following steps in said transform applying step: rotating through an angle in said complex plane each symbol in each of said plurality of symbol vectors of said first codeword; forming a block from a plurality of said rotated first codewords, said block including a plurality of column vectors equal in number to said number of transmit antennas and including a plurality of rows equal in number to said plurality of frequencies, each of said column vectors of said block including in adjacent rows thereof all of said rotated symbols from at least one of said symbol vectors; and forming said second codeword from a plurality of said blocks such that said plurality of rows thereof is equal in number to said temporal correlation factor times said plurality of frequencies; and transmitting said second codeword in temporally successive ones of said blocks in said second codeword transmitting step.
 11. The method for conveying an encoded data stream as recited in claim 10, where said symbol rotating step includes the step of dividing a unit circle into a plurality of discrete angles and rotating said each symbol to one of said discrete angles in accordance with a position of said symbol in said symbol vector.
 12. The method for conveying an encoded data stream as recited in claim 11, where said unit circle dividing step includes the step of dividing said unit circle in to said plurality of discrete angles, said plurality of angles being in number proportional to said symbol vector size multiplied by said number of transmit antennas.
 13. The method for conveying an encoded data stream as recited in claim 1 including the steps of: forming as said first codeword a space-frequency encoded codeword corresponding to said data stream in said first codeword forming step, said symbols of said space-time encoded first codeword equal in number to said plurality of transmit antennas; repeating said first codeword as said rows of said second codeword in said transform applying step, said second codeword including a plurality of blocks, each block including a number of columns equal in number to said plurality of transmit antennas and a number of rows equal in number to said plurality of frequencies; and transmitting said second codeword in temporally successive ones of said blocks in said second codeword transmitting step.
 14. An apparatus for conveying data in a broadband wireless communication system, the system comprising: a transmitter having a plurality of transmit antennas and a plurality of orthogonal frequency modulators for modulating a transmission symbol onto each of a corresponding plurality of frequencies; an encoder for encoding a data stream into a codeword, said codeword being characterized by a matrix of transmission symbols having a plurality of columns equal in number to said number of transmit antennas and a plurality of rows equal in number to an integer multiple of said plurality of frequencies, said encoder being coupled to said transmitter such that a transmission symbol at a row of said codeword and a column of said codeword is transmitted via a transmit antenna corresponding to said column of said codeword over a frequency corresponding to said row of said codeword, said encoder being further operable to establish a set of symbols in which a minimum product distance is maximized, said set including said transmission symbols of said codeword; a receiver having a plurality of receive antennas and a plurality of orthogonal frequency demodulators for demodulating each of said corresponding plurality of frequencies, where a region of space between each of said transmit antennas and each of said receive antennas defines a corresponding one of a plurality of transmission channels; and a decoder coupled to said receiver for decoding said transmitted codeword and recovering therefrom said data stream.
 15. The apparatus for conveying data as recited in claim 14, further including: a channel monitor operable to determine channel characteristics of each of said plurality of transmission channels; and an interleaver for permuting rows of said codeword in accordance with said channel characteristics.
 16. An apparatus for conveying data in a broadband wireless communication system, the system comprising: a transmitter having a plurality of transmit antennas and a plurality of orthogonal frequency modulators for modulating a transmission symbol onto each of a corresponding plurality of frequencies; an encoder for encoding a data stream into a first codeword; a mapper for mapping said first codeword onto a second codeword, said second codeword being characterized by a matrix of transmission symbols having a plurality of columns equal in number to said number of transmit antennas and a plurality of rows equal in number to an integer multiple of said plurality of frequencies, said encoder being coupled to said transmitter such that a transmission symbol at a row of said second codeword and a column of said second codeword is transmitted via a transmit antenna corresponding to said column of said second codeword over a frequency corresponding to said row of said second codeword; a receiver having a plurality of receive antennas and a plurality of orthogonal frequency demodulators for demodulating each of said corresponding plurality of frequencies, where a region of space between each of said transmit antennas and each of said receive antennas defines a corresponding one of a plurality of transmission channels; and a decoder coupled to said receiver for decoding said transmitted second codeword and recovering therefrom said data stream.
 17. The apparatus for conveying data as recited in claim 16, wherein said encoder is a space-time encoder for encoding a space-time codeword and said mapper maps said space-time codeword onto a space-frequency codeword.
 18. The apparatus for conveying data as recited in claim 17, wherein said mapper is operable to repeat said space-time codeword on each of a plurality of rows of said space-frequency codeword.
 19. The apparatus for conveying data as recited in claim 16, wherein said encoder is a space-frequency encoder for encoding a space-frequency codeword and said mapper maps said space-frequency codeword onto a space-time-frequency codeword.
 20. The apparatus for conveying data as recited in claim 19, wherein said mapper is operable to repeat said space-frequency codeword on each of a plurality of blocks of said space-time-frequency codeword. 